Ember CLI ES6模块:导入app root的路径

时间:2015-03-17 13:22:47

标签: ember.js module ember-cli ecmascript-6

在Ember CLI中使用它时,我发现ES6模块中的导入路径非常混乱。例如,如果我想在我的应用程序中深入导入模型,我最终会做这样的事情:

import User from '../../../../../models/user';

这是一次试验和错误的练习,因为很难直观地看到我正在使用它的文件夹树的深度。更糟糕的是,如果我重构我的文件,一切都会中断。

所以或者,我可以使用这样的绝对路径:

import User from 'app-name/models/user';

我不想将应用名称硬编码到路径中,因为它可以更改。

是否有指定应用根的简写?

./不起作用,因为./表示当前路径。

import User from './models/user';

1 个答案:

答案 0 :(得分:2)

不幸的是,至少在Ember中无法以编程方式命名ES6导入,因此您无法使用ENV.modulePrefix

然而,有一种解决方法。无论什么时候想要更改模块前缀,都要从Ember root中的ZSH运行这个GNU sed命令。

sed -i 's/previousName/newName/g' **/*