什么是ember js静态数据最佳实践

时间:2017-11-21 15:25:36

标签: json ember.js

我有一些永远不会改变的静态数据,比如菜单项背后的数据

{
  "menuItems": [{
    "name": "Shows",
    "route": "shows"
  }, {
    "name": "Podcasts",
    "route": "podcasts"
  }]
}

我在/dist文件夹中创建了一个json文件,在应用程序路径中我正在创建一个模型,如

export default Route.extend({
  model() {
    return $.getJSON('/static/model.json')
  }
});

使用静态数据初始化模型是否有更好的做法?

2 个答案:

答案 0 :(得分:2)

你真的不应该编辑dist/文件夹 - 这就是Ember坚持编译代码的地方。

如果您的静态数据仅在一个地方使用,那么将它放在用作const的位置会更直接。在这种特定情况下,这是UI代码,可能属于控制器。

模型钩子最适合加载每次到达该路线时可能发生变化的数据 - 可能来自后端。

答案 1 :(得分:1)

  1. 您可以安装ember-cli-json-module然后,应用程序或测试中的任何JSON文件都将转换为您可以导入的ES6模块,如下所示: import myFixture from 'my-app/tests/fixtures/my-fixture';