【问题标题】:generate model syntax different to tutorial生成与教程不同的模型语法
【发布时间】:2019-09-21 21:18:13
【问题描述】:

ember 辛烷值教程。 using: ember generate model person 在用于 person 模型(以及与此相关的任何其他模型)时会产生构建错误。

我正在查看 ember octane 教程并生成了人员模型。生成的代码包含与示例显着不同的代码。这个额外的代码会导致构建错误。

这是我跑完之后

"ember 生成模型人"

import DS from 'ember-data';
const { Model } = DS;

export default Model.extend({

});

这是https://octane-guides-preview.emberjs.com/release/models/的例子

import DS from 'ember-data';
const { Model, attr } = DS;

export default class Person extends Model {

  @attr('string') firstName;
  @attr('date') birthday;

}

如果我将 @attr 代码添加到生成的模型中,我会收到此构建错误。

testapp/models/person.js: Unexpected token, expected "," (5:27)
3 | 
4 | export default class Person extends Model ({
5 |   @attr('string') firstName;
  |                            ^
6 |     @attr('date') birthday;
7 | });

问题在于生成的模型包含了示例中没有的一些内容。

导出默认 Model.extend({

而不是

导出默认类 Person 扩展模型 {

我期望一个干净的构建,因为我使用了 ember 生成模型方法并按照示例添加了 attr 的片段。

我认为 ember 生成的模型蓝图需要针对 Octane 进行更新?

我还建议蓝图也添加“类扩展模型”?

【问题讨论】:

  • 您最近多久创建了您的 octane 应用程序?
  • ember-data 和 ember-cli-babel 有哪些版本?
  • 哦,嘿,我刚刚注意到你的模型在类主体周围有paren。我不认为这是有效的?

标签: ember.js ember-octane


【解决方案1】:

Octane 版本目前处于预览阶段(正如您链接到的指南所示),在它准备好供普遍使用之前还有更多工作要做。剩下的一项是发布与指南匹配的新生成器代码。现在,ember-data 的发布版本包括非辛烷值 Ember 的生成器。有some ongoing fixes 将很快在ember-data v3.13.0 中发布。这应该会生成符合您的 Octane 版本期望的模型。

您现在可以通过运行以下命令进行尝试: npm install ember-data@beta

然后重新运行您的生成器ember generate model person

另一种选择是等几个星期,等这些问题得到解决。 Octane 预计将在 Ember 版本 3.14.0 中完全运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-14
    • 2012-08-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多