生成与教程不同的模型语法

时间:2019-09-21 21:18:13

标签: ember.js 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扩展模型{

当我使用余烬生成模型方法并按示例添加attr的片段时,我期望构建整洁。

我认为ember生成的模型蓝图需要为Octane更新吗?

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

1 个答案:

答案 0 :(得分:4)

Octane版本当前正在预览中(如您所链接的指南所示),在准备正式使用之前,还有许多工作要做。剩下的一项是发布与指南匹配的新生成器代码。目前,ember-data的发行版本包括非辛烷值Ember的生成器。 some ongoing fixes即将在ember-data v3.13.0中发布。这将导致生成的模型符合您的Octane版本期望。

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

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

在解决这些问题时,另一个选择就是等待几周。辛烷值有望在Ember 3.14.0版中完全正常运行。