use*_*168 4 ember.js ember-cli
我有web app和Ember appiframe.我想从自定义库导入web app到ember app类似的全局变量.库看起来像具有功能的对象:
var helpers = {
helper1: function() {},
helper2: function() {}
};
Run Code Online (Sandbox Code Playgroud)
库使用套接字,对于两个应用程序都是一样的.
我写:
app.import("./../../../public/scripts/js-helpers.js"); //file located in web app
Run Code Online (Sandbox Code Playgroud)
我无法访问helpersproject和ember-cli copy文件夹中的变量public到他们的工作文件夹中.对不起,如果问题是愚蠢的,我无法理解ember-cli导入原则.
我会提出一个解决方案,我认为这是最简单的解决方案.您将不会拥有全局范围的变量,但您使用的是ES6模块方法.
例如,假设您有一个被app_name/lib/调用的文件helper.js.lib是您为保存自定义库而创建的目录.您不必使用该名称.使用export default命令如下:
export default {
helper1: function() {},
helper2: function() {}
};
Run Code Online (Sandbox Code Playgroud)
然后,假设您在路线中需要这个.这可能是一条这样的路线:
import helper from 'app_name/lib/helper';
export default Ember.Route.extend({
model: function(){
helper.helper1();
}
Run Code Online (Sandbox Code Playgroud)
helper是您导入的名称,并表示您导出的对象helper.js.这种方法似乎是Ember-CLI建议你应该使用的风格