gpt4 book ai didi

ember.js - 带有 ember 数据的 Ember App Kit

转载 作者:行者123 更新时间:2023-12-04 17:22:37 26 4
gpt4 key购买 nike

我正在尝试使用 ember app kit 开始一个新项目和使用 ES6 的 ember 数据。我已经成功地在 adapter.js 中使用以下代码创建了一个商店

var ApplicationAdapter = DS.FixtureAdapter.extend();
export default ApplicationAdapter;

但是,我无法创建模型并访问它。在 models/account.js我有这个
var Account = DS.Model.extend({
name: DS.attr('string')
});

Account.FIXTURES = [
{
'id': 1,
'name': 'Acc 1'
}, {
'id': 2,
'name': 'Acc 2'
}
]

export default Account;

在我的 routes/accounts.js我有这个:
var AccountsRoute = Ember.Route.extend({
model: function() {
var store = this.get('store');
return store.find('account');
}
});
export default AccountsRoute;

在这个阶段,我只是想从屏幕上显示的灯具中获取帐户列表。该路由运行良好,如果我放入静态数据(如索引路由),则一切正常。但是,使用上面的代码,我遇到了麻烦
DEPRECATION: Action handlers contained in an `events` object are deprecated in favor of putting them in an `actions` object (error on <Ember.Route:ember352>)
at Object.triggerEvent (http://localhost:8000/vendor/ember/index.js:30519:13)
at trigger (http://localhost:8000/vendor/ember/index.js:29641:16)
at handleError (http://localhost:8000/vendor/ember/index.js:29903:9)
at invokeCallback (http://localhost:8000/vendor/ember/index.js:8055:19)
at null.<anonymous> (http://localhost:8000/vendor/ember/index.js:8109:11)
at EventTarget.trigger (http://localhost:8000/vendor/ember/index.js:7878:22)
at http://localhost:8000/vendor/ember/index.js:8180:17
at Object.DeferredActionQueues.flush (http://localhost:8000/vendor/ember/index.js:5459:24)
at Object.Backburner.end (http://localhost:8000/vendor/ember/index.js:5545:27) index.js:394
Error while loading route:
Object {readyState: 4, getResponseHeader: function, getAllResponseHeaders: function, setRequestHeader: function, overrideMimeType: function…}
index.js:394
Uncaught #<Object> index.js:30566

我哪里错了?

最佳答案

您的 Account模型正在使用 DS.RESTAdapter而不是 DS.FixtureAdapter ,因为您正在 ApplicationAdapter 中设置适配器,预期是 AccountAdapter .所以你从 ajax 收到一个错误,可能是因为 url 与服务器不匹配。

配置 DS.FixtureAdapter每个模型使用:

var AccountAdapter = DS.FixtureAdapter.extend();
export default AccountAdapter;

或者作为所有型号的全局适配器:
App.Store = DS.Store.extend({
adapter: DS.FixtureAdapter
});

我希望它有帮助

关于ember.js - 带有 ember 数据的 Ember App Kit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18742647/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com