这有两个部分:
- 我应该将文件放在哪里以将其作为资产导入?
- 为什么不把它放在我的
app
-folder 工作?
做你想做的事情的方法是vendor
在你的根目录中创建一个文件夹,将文件放在那里的某个地方,然后Brocfile.js
像这样导入它:
app.import('vendor/playGame/game.js');
这记录在 ember-cli.com 上,尽管有些隐藏。
您也可以将其放入bower_components
,但该文件夹是用于安装的东西bower
,理论上可以删除(实际上,这是针对各种问题的常见建议)。bower_components
默认情况下,也不会将事物签入到版本控制中,在这种情况下您可能想要这样做。
这应该可以解决您的问题。
现在,为什么不把它放进去/app
?
app
是一个特殊的文件夹。从文档中:
包含您的 Ember 应用程序的代码。此文件夹中的 Javascript 文件通过 ES6 模块转译器编译并连接成一个名为app.js
.
这就是使您可以import
从应用程序中获取内容的原因。中的文件夹app
可直接在您的<appname>
命名空间下使用,以及其他一些文件和文件夹(如config/environment
.
例子:
import myWidget from 'my-app/widgets/my-widget';`
引用的文件是/app/widgets/my-widget.js
.
该ember-cli
网站有更多关于如何使用模块的资源。如果这没有任何意义,请阅读那些。
总结一下:
- 你可以把你的文件放进去
app
,但这会使它成为你转译包的一部分,你必须在内部以这种方式使用它,export
以及它附带的所有其他东西。它最终会成为<appname>.js
- 如上所述,您可以将文件放入
vendor
并将其导入您的文件中。Brocfile.js
它将成为您的应用程序代码的一部分vendor.js
并在您的应用程序代码之前加载。