尝试扩展 JSONSerializer 时未定义 get
get is not defined when trying to extends JSONSerializer
我尝试通过扩展 DS.JSONSerialzer 来定义我的自定义序列化程序。
我选择了没有修改的序列化函数,但是当我运行 Ember 时,我得到这个错误:
ReferenceError: get is not defined
这是我的代码:
import DS from 'ember-data';
export default DS.JSONSerializer.extend({
serialize: function(record, options) {
var json = {};
if (options && options.includeId) {
var id = get(record, 'id');
if (id) {
json[get(this, 'primaryKey')] = id;
}
}
record.eachAttribute(function(key, attribute) {
this.serializeAttribute(record, json, key, attribute);
}, this);
record.eachRelationship(function(key, relationship) {
if (relationship.kind === 'belongsTo') {
this.serializeBelongsTo(record, json, relationship);
} else if (relationship.kind === 'hasMany') {
this.serializeHasMany(record, json, relationship);
}
}, this);
return json;
},
});
我没有更改任何代码。这是原件。为什么 get 突然未定义?它在原始文件的第 1 行导入 JSONSerialiser
你能帮帮我吗?
他们在创建序列化程序时在范围内定义了 get
,但这不会超出他们的范围进入您的文件。
var get = Ember.get;
var isNone = Ember.isNone;
var map = Ember.ArrayPolyfills.map;
var merge = Ember.merge;
将所有 get
方法替换为 Ember.get
或将 get
定义为 Ember.get
我尝试通过扩展 DS.JSONSerialzer 来定义我的自定义序列化程序。
我选择了没有修改的序列化函数,但是当我运行 Ember 时,我得到这个错误:
ReferenceError: get is not defined
这是我的代码:
import DS from 'ember-data';
export default DS.JSONSerializer.extend({
serialize: function(record, options) {
var json = {};
if (options && options.includeId) {
var id = get(record, 'id');
if (id) {
json[get(this, 'primaryKey')] = id;
}
}
record.eachAttribute(function(key, attribute) {
this.serializeAttribute(record, json, key, attribute);
}, this);
record.eachRelationship(function(key, relationship) {
if (relationship.kind === 'belongsTo') {
this.serializeBelongsTo(record, json, relationship);
} else if (relationship.kind === 'hasMany') {
this.serializeHasMany(record, json, relationship);
}
}, this);
return json;
},
});
我没有更改任何代码。这是原件。为什么 get 突然未定义?它在原始文件的第 1 行导入 JSONSerialiser
你能帮帮我吗?
他们在创建序列化程序时在范围内定义了 get
,但这不会超出他们的范围进入您的文件。
var get = Ember.get;
var isNone = Ember.isNone;
var map = Ember.ArrayPolyfills.map;
var merge = Ember.merge;
将所有 get
方法替换为 Ember.get
或将 get
定义为 Ember.get