我正在开发一个Ember-JS应用程序,其中包含许多执行各种UX和样式任务的JavaScript。
因为这些任务超出了MVC逻辑的范围,所以我将它们放入了我放在供应商地图中的模块中。
将它们放入Vendor文件夹并不意味着我已完成调整这些文件,但为了测试它们,我需要一遍又一遍地重新启动ember-server。 / p>
如何让Ember在我的供应商文件夹中查看这些JS文件,并在我更改它们时重新编译它们?
以下页面回答了Ember v.1,但并不适用于Ember 2.0:https://discuss.emberjs.com/t/solved-watch-addon-directory-for-changes/6410/4
我也试过创建一个插件,但是ember(cli)回答:“你不能在ember-cli项目中使用addon命令。”
答案 0 :(得分:3)
我花了一段时间来连接分散在互联网上的所有信息,但使用@Lux的答案,这就是我发现的。
1)使用ember-cli,我生成一个'实用程序' (因此是utils文件夹):
ember g util grid-layout
这为您提供了一个JS文件“app / utils / grid-layout.js”模板来填写。就我而言,这是一个......
2)将我之前创建的函数的主体复制粘贴到ember-cli提出的函数体中:
export default function gridLayout(tree) {
…
return tree
}
3)在控制器中导入函数,在我的例子中是controller / index.js。我找到了关于如何执行此操作的不同示例,使用和不使用花括号并使用不同的模块文件路径,但这是使它适用于我的原因:
import Ember from "ember";
import gridLayout from "../utils/grid-layout";
export default Ember.Controller.extend({…
链接:
https://developer.mozilla.org/nl/docs/Web/JavaScript/Reference/Statements/export
https://blog.abuiles.com/blog/2014/10/03/working-with-javascript-plugins-in-ember-cli/
答案 1 :(得分:2)
默认情况下,在ember-cli版本2.11.0中,它正在观看供应商 https://github.com/ember-cli/ember-cli/pull/6436