如何将我的Procfile中的ember-cli生成的应用程序部署到Heroku?
=== web (1X): `ember server`
web.1: crashed 2014/04/10 13:19:57 (~ 48s ago)
=== web (1X): `npm start`
web.1: crashed 2014/04/10 13:22:11 (~ 2m ago)
Run Code Online (Sandbox Code Playgroud) 我已经使用Ember-CLI建立了一个网站,现在它已准备好投入生产,所以我们正在寻找一种方法来保持它的永久运行.
现在我们正在使用$ ember serve --port 80
但显然这只有在我们登录的情况下才有效.我之前使用Forever来保持节点应用程序运行,但我不确定如何使用Ember CLI,因为'ember serve'命令显然不仅仅是运行app.js?
任何输入将不胜感激!
刚刚将我的应用程序转换为ember-cli,但我不知道如何使用它,Ember.Application.register因为register在启动应用程序时似乎不可用extend而不是create.
import Ember from 'ember';
import App from 'myapp/app';
var AdminMyController = Ember.ObjectController.extend({
});
// THROWS ERROR HERE BECAUSE register isn't, uh...registered?
App.register('controller:adminMyController', AdminMyController, { singleton: false });
export default AdminMyController;
Run Code Online (Sandbox Code Playgroud)
以前,因为App是全球性的,我可以在同一个类中注册.
我是否必须将所有注册调用移至初始化程序,以便我可以访问应用程序实例?
当我读到有关public从ember-cli插件共享资源目录的所有信息时,我感到非常困惑.
有没有人在这里工作?任何一个示例插件的参考也会受到赞赏......
如果我有一个bower_components包含50个JS文件的文件夹的存储库,我不能在我的Brocfile中用app.import()一次包含它们.如何将它们全部包含在同一个电话中?
如果我尝试app.import整个js文件目录,我在编译时遇到这个错误:
You must pass a file to 'app.import'. For directories specify them to the constructor under the 'trees' option.
到目前为止,我一直使用绑定帮助程序在我的博客帖子中注入Google DFP广告.由于在Ember 2.0中删除了所有Handlebars API,我可以使用哪种Ember 2.0?
import Ember from "ember";
export default Ember.Handlebars.makeBoundHelper(function(value, options) {
var parsedHtml = Ember.$('<div />').html(value)
// Push the ads after the divs have been rendered
Ember.run.schedule('afterRender', function() {
googletag.cmd.push(function() { googletag.display('div-gpt-ad-111111111-0'); });
})
}
return parsedHtml.html()
});
Run Code Online (Sandbox Code Playgroud) 我正在使用Ember Cli编写一个Ember.js应用程序,我希望包含一个非bower依赖项 - 基本上是我vendor文件夹中的依赖项.
这样做的说明告诉我将以下行添加到我的ember-cli-build.js文件中:
app.import('vendor/dependency-to-include.js');
Run Code Online (Sandbox Code Playgroud)
对于正常的ES5风格的依赖项,这可以正常工作,但是如果我想添加用ES6编写的依赖项呢?
现在它只是将它传递给浏览器,不会产生如下错误:
Uncaught SyntaxError: Unexpected reserved word
Run Code Online (Sandbox Code Playgroud)
因为我的ES6风格的依赖项使用以下语法:
import Util from './util
Run Code Online (Sandbox Code Playgroud)
我猜我需要告诉ember-cli-build在将它传递给浏览器之前将其转换为特定的依赖关系,但我该如何去做呢?
谢谢
我正在尝试编写单元测试以确保在关闭模态时关闭属性.但是,我似乎遇到了动作处理方面的问题.我一直收到错误消息:
Error: <q12-reports@component:add-team-modal::ember294> had no action handler for: hideModal
这是modal.js组件:
stopSearch: function(modal) {
modal.send('hideModal');
this.setProperties({
searchTerm: ''
});
},
actions: {
modalCancelled: function(modal) {
this.stopSearch(modal);
},
etc...
}
Run Code Online (Sandbox Code Playgroud)
正如你所看到的那样,我正在冒泡hideModal.这是我试图编写的单元测试:
test('closing modal clears properties correctly', function(assert) {
assert.expect(2);
let component = this.subject();
let firstSearchTerm;
Ember.run(function() {
component.set('searchTerm', 'test');
firstSearchTerm = component.get('searchTerm');
assert.ok(firstSearchTerm, 'test', 'set term properly');
component.send('modalClosed', component);
});
assert.ok(firstSearchTerm, '', 'clears term properly');
})
Run Code Online (Sandbox Code Playgroud)
在人们提到这一点之前,我在下面尝试过.
test('closing modal clears properties correctly', function(assert) {
assert.expect(2);
let component = …Run Code Online (Sandbox Code Playgroud) 我正在尝试使用Ember Testing集成自动化测试.
应用程序在浏览器上运行正常,没有任何错误.我试过简单地跑步
ember test
Run Code Online (Sandbox Code Playgroud)
在命令行上,但得到一堆全局错误,所有测试都失败了.
这些是我得到的错误:
not ok 1 PhantomJS 2.1 - Global error: SyntaxError: Unexpected token ',' at http://localhost:4302/assets/vendor.js, line 145617
not ok 2 PhantomJS 2.1 - Global error: Error: Could not find module ember-metal/core required by: ember-testing/index at http://localhost:4302/assets/test-support.js, line 62
not ok 3 PhantomJS 2.1 - Global error: ReferenceError: Can't find variable: define at http://localhost:4302/assets/tests.js, line 1
...
Run Code Online (Sandbox Code Playgroud)
当我在浏览器上运行测试时,我没有得到语法错误(上面的第一个),第一个错误是
Uncaught Error: Could not find module `analogue/resolver` imported from `analogue/tests/helpers/resolver`
Run Code Online (Sandbox Code Playgroud)
这些对我来说没有意义,因为我不应该编辑vendor.js和它说它找不到的模块.有任何想法吗?
当我使用时
ember new projname
Run Code Online (Sandbox Code Playgroud)
项目是使用2.7.0余烬版本创建的。我想创建一个旧版本的余烬项目。我应该使用什么?[我检查了可以与新命令一起使用的选项,但是对此没有帮助。]
ember-cli ×10
ember.js ×9
javascript ×4
ecmascript-6 ×1
forever ×1
heroku ×1
node.js ×1
transpiler ×1
unit-testing ×1