Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ember.js/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript ember.js包括自定义js_Javascript_Ember.js - Fatal编程技术网

Javascript ember.js包括自定义js

Javascript ember.js包括自定义js,javascript,ember.js,Javascript,Ember.js,试图将我的头缠绕在Ember.js上。 似乎我理解复杂的事情,但错过了小事情 如何添加example.js文件? 为简单起见,假设example.js文件只包含: (function(){ console.log("example is alive in console"); })(window); 这将在浏览器控制台中显示“示例在控制台中处于活动状态” 我试过: 添加app.import('vendor/javascripts/example.js')在ember-cli-build.j

试图将我的头缠绕在Ember.js上。 似乎我理解复杂的事情,但错过了小事情

如何添加example.js文件? 为简单起见,假设example.js文件只包含:

(function(){
  console.log("example is alive in console");
})(window);
这将在浏览器控制台中显示“示例在控制台中处于活动状态”

我试过: 添加
app.import('vendor/javascripts/example.js')在ember-cli-build.js中,并将
添加到index.html

控制台正在显示

ⓧ 获取
调试:-------------------------------------
调试:余烬:2.11.3
调试:余烬数据:2.12.1
调试:jQuery:3.2.1
调试:-------------------------------------
ⓧ 得到

我发现的所有答案都表明,只需向供应商文件添加custom.js就可以了。遗憾的是,我遗漏了一些东西。

当我没有在
/vendor
目录中嵌套资产时,这对我来说是有效的。ember cli构建过程将
/vendor
中的JS文件绑定到单个
vendor.JS
文件中,您可以在
app/index.html
中看到链接。因此,将您的
example.js
文件放在
/vendor
的根目录下,然后将导入添加到
ember cli build.js


app.import('vendor/example.js`);


现在,当您启动服务器时,应该执行
example.js
中的代码,因为它将包含在
assets/vendor.js

中。首先,Ember.js采用了
约定优先于配置的方法,并且您的
URL
可以比普通HTML网站做很多事情

无论您想对custom.js文件做什么,它都不是将其作为路径的余烬方式。你需要在整个应用程序中导航。虽然路线不仅仅是导航。您可以指定应用程序的结构,用户可以使用
app/Router.js
文件中的
Router的
map
功能浏览应用程序

但是,如果您想在应用程序中包含custome.js文件,并让custom.js为您的应用程序执行一些任务。您只需继续创建一个具有任何名称的目录,
javascript
,例如在
app
目录中。将javascript文件放在其中。然后,您可以导入这些文件,只需引用ember中的任何其他文件即可:

import customObject from 'yourApp/javascript/custom.js';
在这里,您的
custom.js
应该导出
customObject

如果你想了解更多,一定要阅读。如果你真的想了解更多的话


注意:在编写此答案时,当前的ember cli版本为@2.12.0

修改ember-cli-build.js时,必须手动重新启动ember服务器。livereload服务器不会接受这些更改。

“阅读指南和API文档”含糊不清,对我和所有未来的观众都没有帮助。我已经读了好几遍了,仍然找不到一个具体提到的自定义js包含,它可以完成一个简单的任务,比如启动计时器或显示控制台消息。您的建议将基于指南/API中的哪些内容?我似乎跳过了一个重要的章节!谢谢你的验证。我将文件切换到根目录,同样的问题。然后将其放回/javascripts/example.js,并从index.html中删除“”并重新启动ember服务器。看,我知道这是件愚蠢的事。修改ember-cli-build.js时,必须手动重新启动ember服务器。livereload服务器将不会接收更改。您的回答使我意识到,我的路径名是错误的。。。唉,这总是愚蠢的:P你的答案应该是公认的答案,即使你也是提出问题的人;-)谢谢你让我意识到我的错误:D