问题
Can a local storage adapter and a data storage adapter be used simultaneously? Here's some example code.
VpcYeoman.ApplicationAdapter = DS.LSAdapter.extend({
namespace: 'viewpoint-emberjs'
});
vs.
VpcYeoman.Store = DS.Store.extend({
revision: 12,
adapter: DS.FixtureAdapter.extend({
queryFixtures: function(fixtures, query, type) {
return fixtures.filter(function(item) {
for(prop in query) {
if( item[prop] != query[prop]) {
return false;
}
}
return true;
});
}
})
});
Fight! Or coexist??
回答1:
Yes, absolutely. You can create per-type adapters, so you can have:
App.PostAdapter = DS.FixtureAdapter.extend({
queryFixtures: function(fixtures, query, type) {
return fixtures.filter(function(item) {
for(prop in query) {
if( item[prop] != query[prop]) {
return false;
}
}
return true;
});
}
});
App.Post.FIXTURES = [];
Your other non-fixture types can omit an Adapter
and instead use the ApplicationAdapter
, which could be an instance of DS.RESTAdapter
or LocalStorageAdapter
. Optionally, you could define that adapter on the DS.Store instance.
来源:https://stackoverflow.com/questions/22510544/emberjs-can-a-local-storage-adapter-and-a-data-storage-adapter-be-used-simulta