标签: ember-cli

ember-cli失败--environment = production(未捕获错误:找不到模块)

我正在使用ember-cli并且在选择生产环境时遇到问题.具体来说,当我跑步时一切正常,我跑步时ember serve --environment=development得到一个空白页面ember serve --environment=production.在控制台中,我看到:

  • 未捕获的TypeError:undefined不是函数
  • 未捕获错误:找不到模块simple-auth/authenticators/base

所有其他事情都是平等的,所有依赖关系都是最新的.我是一个总菜鸟所以我甚至不知道从哪里开始如何调试:是它的余烬吗?烬-CLI?西兰花?任何帮助,将不胜感激.

npm ember.js ember-cli broccolijs

3
推荐指数
1
解决办法
1302
查看次数

Ember-cli实现自定义序列化器

在一个带有Rails 4后端的基于Ember-cli的项目中 - 我需要能够保存(并最终读取)嵌套数据.数据模型很直接......

Survey
  name: string

Question:
  survey_id: integer
  question_type_id: integer
  text: string

Answer: 
  question_id: integer
  text: string

A Survey hasMany Questions.  Each Question hasMany Answers
Run Code Online (Sandbox Code Playgroud)

我想弄清楚如何编写自定义Survey序列化程序.根据我的研究,我知道我需要扩展DS.JSONSerializer - 但我不知道该怎么做.任何帮助将不胜感激.

谢谢

ember.js ruby-on-rails-4 ember-cli

3
推荐指数
1
解决办法
3047
查看次数

在Ember-cli中使用jquery

我对Ember.js和Ember-cli都比较陌生,非常感谢在自定义视图中使用jquery工具提示.所有代码都在下面,但是当我注入模板时,我收到以下控制台错误:

[Error] TypeError: 'undefined' is not a function (evaluating 'Ember.$().tooltip()')
Run Code Online (Sandbox Code Playgroud)

我在名为tooltip.js的文件中使用自定义视图:

import Ember from 'ember';

export default Ember.View.extend({

  tagName:  'span',
  title:  'The tooltip title',
  html: true,
  placement:  'top',
  didInsertElement: function(){
    Ember.$().tooltip({"html": this.get('html'),  
                                        "title":this.get('title'),
                                        "placement":this.get('placement'), 
                                        container: 'body'});

  }
});
Run Code Online (Sandbox Code Playgroud)

相关的模板代码是:

{{#view "tooltip" titleBinding="item" placement="right"}}<span><img class="app_info_icon" id="typeInfoIcon" src="/assets/images/info_icon.png"></img></span>{{/view}}
Run Code Online (Sandbox Code Playgroud)

我该如何解决这个问题?

jquery ember.js ember-cli

3
推荐指数
1
解决办法
8200
查看次数

Ember CLI pod结构 - 在每个pod中放置额外的模板

我刚刚迁移了一个Ember应用程序,通过将podModulePrefix属性添加到我的应用程序来使用pod结构.所有路由模板,支持路由模板的控制器以及路由本身都存在于:

app/
  modules/
    route_name/
         template.hbs
         controller.js
         route.js
Run Code Online (Sandbox Code Playgroud)

现在我做了很多手工切换带有命名插座的模板.因此路由模板可能包含两个命名的出口,并且可以在任何时候将4或5个模板呈现到这些出口中.截至目前,这些额外的模板位于Ember-CLI创建的模板目录中:

app/
  templates/
     route_name/
        temp1
        temp2
Run Code Online (Sandbox Code Playgroud)

我的路线上可能存在的一个动作可能包含此调用:

this.render('route_name/temp1', {outlet: 'named', into: 'route_name'});
Run Code Online (Sandbox Code Playgroud)

这样做的步骤是什么,以便放置在pod上的模板文件夹中的模板是可解析的:

app/
  modules/
    route_name/
       template.hbs
       controller.js
       route.js
       templates/
         temp1
Run Code Online (Sandbox Code Playgroud)

而如何将我然后引用temp1this.render()

ember.js ember-cli

3
推荐指数
1
解决办法
854
查看次数

使用ember-cli进行原型扩展

使用ember-cli及其ES6模块转换器如何以及在何处定义,以便适用于我的应用程序中的所有数组:

Array.prototype.move = function (old_index, new_index) {
  ....
};
Run Code Online (Sandbox Code Playgroud)

ember.js ember-cli

3
推荐指数
1
解决办法
294
查看次数

如何选择单选按钮并选择带有ember集成测试的选项?

如何使用ember集成测试选择单选按钮和特定选择选项?我知道如何使用click one和fillIn作为输入.

http://guides.emberjs.com/v1.10.0/testing/test-helpers/

ember.js ember-cli

3
推荐指数
1
解决办法
1713
查看次数

ember-2.0角支架组件不与ember-cli@0.2.7一起使用

为了使ember-2.0角度支架组件能够与最新的ember-cli一起使用,我还需要什么

我使用ember-cli 0.27,nodejs 0.12.4和emberjs-canary分支来测试emberjs-2.0.

我创建了一个简单的新骨架应用程序:

  ember new test-app
Run Code Online (Sandbox Code Playgroud)

并创建了一个组件:

    ember g component my-test
Run Code Online (Sandbox Code Playgroud)

在application.hbs中,如果我添加以下行来调用组件,则不会显示组件中的内容.

    <my-test  />
Run Code Online (Sandbox Code Playgroud)

如果将上面的行更改为下面的行,则会显示该组件的内容.

{{my-test}}
Run Code Online (Sandbox Code Playgroud)

这是我的bower.json的摘录

    {
      "name": "em",
      "dependencies": {
         "ember": "components/ember#canary",
         "ember-data": "components/ember-data#canary",,
         "ember-cli-shims": "ember-cli/ember-cli-shims#0.0.3",
         "ember-cli-test-loader": "ember-cli-test-loader#0.1.3",
         "ember-data": "1.0.0-beta.18",
         "ember-load-initializers": "ember-cli/ember-load-initializers#0.1.4",
         "ember-qunit": "0.3.3",
          "ember-qunit-notifications": "0.0.7",
          "ember-resolver": "~0.1.15",
          "jquery": "^1.11.1",
         "loader.js": "ember-cli/loader.js#3.2.0",
         "qunit": "~1.17.1"
   },
   "resolutions": {
       "ember": "canary",
       "ember-data": "canary"
     }
   }
Run Code Online (Sandbox Code Playgroud)

这是我的包,json

  "devDependencies": {
     "broccoli-asset-rev": "^2.0.2",
     "ember-cli": "0.2.7",
     "ember-cli-app-version": "0.3.3",
     "ember-cli-babel": "^5.0.0",
     "ember-cli-content-security-policy": "0.4.0",
     "ember-cli-dependency-checker": "^1.0.0",
     "ember-cli-htmlbars": "0.7.6",
     "ember-cli-ic-ajax": "0.1.1",
     "ember-cli-inject-live-reload": …
Run Code Online (Sandbox Code Playgroud)

ember.js ember-cli ember-components htmlbars

3
推荐指数
1
解决办法
810
查看次数

Ember JS - Handlebars模板 - @index在#each中未定义

我找了一个重复的问题,但在SO上找不到.因此它就在这里.

我的#each模板中有一个块,它成功地从数组中打印了值,但是当我尝试@index在这个块中使用这样的当前索引时{{@index}},它是未定义的.

官方车把文档中我发现了获取当前索引的方法.

路由器(router.js):

Router.map(function() {
    this.resource("books", function(){
        this.route("about", { path : "/:bookId"}, function(){

        });
    });
});
Run Code Online (Sandbox Code Playgroud)

路线(routes/books.js):

var BooksRoute = Em.Route.extend({
    model: function() {
        return [{
            name: "Harry Potter & The Deathly Hallows"
        }, {
            name: "What If?"
        }, {
            name: "Diary of a Wimpy Kid"
        }, {
            name: "The Martian"
        }];
    }
});

export default BooksRoute;
Run Code Online (Sandbox Code Playgroud)

模板(templates/books/index.hbs):

<div class="page-header">
    <h1>All Books!</h1>
    <ul>
        {{#each book in model}}
            {{@index}}
            <li>{{#link-to "books.about"}} {{book.name}} …
Run Code Online (Sandbox Code Playgroud)

javascript templates handlebars.js ember.js ember-cli

3
推荐指数
1
解决办法
1828
查看次数

在Ember中动态添加组件

使用Ember:1.13.11,Ember数据:1.13.8,ember-cli:1.13.12

我想动态地向网页添加一个组件 - 这个网页是另一个组件的模板,不认为它会产生任何不同 - .这是我的代码片段,我在其中尝试将一个名为LyricsEditorLine的组件添加到<div>标记中,不知何故,这样

议程-α/组件/歌词-editor.js内

import Ember from 'ember';
import LyricsEditorLine  from 'agenda-alpha/components/lyrics-editor-line';

export default Ember.Component.extend({
   afterRenderEvent:function(){
      LyricsEditorLine.create().appendTo($("#in"));
 },
init:function(){
  Ember.run.scheduleOnce('afterRender', this, this.afterRenderEvent);
  this._super();
 }
});
Run Code Online (Sandbox Code Playgroud)

议程-α/模板/组件/歌词,editor.hbs

<div id='in'> </div>
Run Code Online (Sandbox Code Playgroud)

每次这给了我

 'Uncaught Error: Assertion Failed: You cannot append to an existing Ember.View. Consider using Ember.ContainerView instead'
Run Code Online (Sandbox Code Playgroud)

寻找ContainerViewhere发现它已被弃用 我发现的大部分答案都没有使用ember-cli并且作为初学者使得它更难理解

我希望能够根据用户需要添加组件

ember.js ember-cli

3
推荐指数
1
解决办法
2741
查看次数

如何使用名称而不是在ember中使用id来查看记录

所以在rails中我们可以通过名称,id等找到记录,类似我想在ember中做而不提出服务器请求我有一个名为person {id,name}的模型.如果我想通过id偷看记录,我这样做:

this.get('store').peekRecord('person', id)
Run Code Online (Sandbox Code Playgroud)

它给了我基于id的记录,但现在我想偷看一个特定名称的记录,我试过这样的事情:

this.get('store').peekRecord('person', {name: "testname"}) 
Run Code Online (Sandbox Code Playgroud)

这似乎不起作用.我只需要使用名称来查看记录

ember.js ember-cli

3
推荐指数
1
解决办法
701
查看次数