我正在开发一个 Ember 应用程序,并想为其创建一个 ember 插件。插件的用例是为消费应用程序创建一个本体树。我想制作成插件的模块的存储库是灵感树,我需要包装这个模块。
我知道 Ember 插件的一般结构以及如何制作插件的想法,但如果有人可以就最佳实践和如何将 npm 模块包装为插件提供建议,那将非常有帮助。
我正在开发一个 Ember 应用程序,并想为其创建一个 ember 插件。插件的用例是为消费应用程序创建一个本体树。我想制作成插件的模块的存储库是灵感树,我需要包装这个模块。
我知道 Ember 插件的一般结构以及如何制作插件的想法,但如果有人可以就最佳实践和如何将 npm 模块包装为插件提供建议,那将非常有帮助。
不要包装 npm 模块,而是在您的应用程序中尝试https://github.com/ef4/ember-auto-importimport InspireTree from 'inspire-tree';
并在您通过 npm 安装该模块后使用 via。
我认为创建一个包装外部库的好插件的步骤遵循以下步骤(我将使用 ember-moment 作为一个很好的用例):*
您需要的不仅仅是底层库中的方法/对象吗?如果没有,只需导入库。
库是否提供了相对无状态的 UI 组件?如果是这样,请开始制作 ember 组件!ember moment {{moment-format date}} 就是一个很好的例子。无论你在做什么,你总是会得到相同的结果。其他示例:数字格式、链接共享、字体真棒。
这个库是否依赖于一堆特定于应用程序的业务逻辑?如果是这样,如果你把它作为一个插件,它可能不值得维护的开销。
拿我说的话持保留态度,因为我维护 0 个插件。
*注意:我不知道您引用的这个库是什么,我也没有查找它,但这些是最佳实践。