javascript - 将 ember-js 升级到 1.12.0 并将 ember-cli 升级到 0 0.2.5 时的缺陷

标签 javascript ember.js upgrade ember-cli

我正在升级我的 Emberjs => 从 1.10.0 到 1.12.0 Ember-cli => 从 0.1.12 到 0.2.5

虽然我正在弄清楚大多数弃用的内容,但有一些我无法理解。 PFB相同

  1. 弃用:Ember.required 已弃用,因为其行为不一致且不可靠。它用在哪里以及如何更改它?
  2. 弃用:在注册表上调用了lookupFactory。这 initializer API 不再接收容器,您应该使用 用于从容器中查找对象的 instanceInitializer
    我确实理解这个问题,但我的初始化程序根本不使用查找。 PFB 我的初始化程序的代码。

//应用程序/初始化器/abc

initialize: function(registry, app) {
  app.register('store:main', Store);
  // Inject into each route a store property with an instance of store:main
  app.inject('route', 'store', 'store:main');
  // Inject into each controller a store property with an instance of store:main
  app.inject('controller', 'store', 'store:main');
}

//应用程序/初始化器/def

initialize: function(registry, app) {
        // Register the session object.
        app.register('session:main', Session);

        // Inject the session object into all controllers.
        app.inject('controller', 'session', 'session:main');
    }
  • 弃用:使用 {{each}} 的上下文切换形式是 已弃用。请使用 block 参数形式({{#each bar as |foo|}}) 来代替。看 http://emberjs.com/guides/deprecations/#toc_more-consistent-handlebars-scope 更多细节。
    我在这里理解 {{#each foo in bar itemController="abc"}} 应更改为 {{#each bar itemController="abc"as |foo| }}。但我的代码如下,没有“in”,意思是使用这个上下文!

    {{#each paged itemController="class.adm.man.stop-term"}} 我该如何改变这个?

  • 最佳答案

    按照您的列表:

    1. 似乎是与 ember 数据相关的 issue 。如果没有,我确信还有另一个插件使用它,但不是你。因此你无能为力。
    2. 同样的事情。我已经介绍了一个例子作为评论。你的代码看起来很适合我,所以,我相信,你也无能为力。
    3. Ember 试图制定更加一致和明确的范围。 in 部分目前尚未弃用,因此最简单的解决方案是添加虚拟 in 部分,例如 {{#each page in paged itemController="class. adm.man.stop-term"}}。但总的来说,我建议使用更复杂的解决方案 - 创建一个 ItemList 组件并将其重构为:
    <小时/>
    {{#each paged as |page|}}
      {{item-list model=page}}
    {{/each}}
    

    关于javascript - 将 ember-js 升级到 1.12.0 并将 ember-cli 升级到 0 0.2.5 时的缺陷,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30389404/

    相关文章:

    javascript - 来自模板的 ember 调用 Controller

    node.js - 构建 ember.js 后出现 TypeError : App. 路由器未定义

    go - 升级 Go 1.4 后如何重建所有库

    javascript - 备注字段(客户端和服务器端)的正则表达式验证很少有特殊标签

    javascript - 为什么 Google Analytics 事件不触发/保存?

    ember.js - 如何在 ember 应用程序中自动播放视频

    Grails 2.4.4 升级数据绑定(bind)问题

    python - 准备从 Python 2.x 转换到 3.x

    javascript - React.js : Proxy that I set in package. json 在 webpack 中不起作用

    javascript - 如何将多个 json onChange 发送到 GET 或 POST