0
我正在製作基於pattern below from Robin Ward [video/15sec] 的自定義解析器,這是讓移動設備在加載「模板之前首先查找」mob_template.hbs「的技巧。哈佛商學院的」使用Ember-App-Kit擴展EmberDefaultResolver
App.Resolver = EmberDefaultResolver.extend({
resolveTemplate: function(parsedName){
var t = this._super(parsedName);
if App.mobileActive){
return this._super('mob_' + parsedName) || t;
}
return t;
}
});
但是我使用Ember App Kit,它使用resolver的一個特殊版本:
我真的不能告訴發生了什麼事在那裏或什麼,我需要做的,以產生類似功能。任何人有任何想法?
我已經試過這樣的事情,但它會導致沒有得到解決:
var App = Ember.Application.extend({
//...
Resolver: Ember.DefaultResolver.extend({
resolve: function(fullName) {
var parsedName = this.parseName(fullName),
resolveMethodName = parsedName.resolveMethodName;
if (!(parsedName.name && parsedName.type)) {
throw new TypeError("Invalid fullName: `" + fullName + "`, must be of the form `type:name` ");
}
if (this[resolveMethodName]) {
if (window.screen_type == 'mobile'){
var resolved = this[resolveMethodName](parsedName + '_mobile');
} else{
var resolved = this[resolveMethodName](parsedName);
}
if (resolved) { return resolved; }
}
return this.resolveOther(parsedName);
},
})
});