我刚刚开始关注Ext Direct,我正在尝试使用命名空间来处理它。但是,我没有太多运气。
按照文档(http://docs.sencha.com/extjs/4.2.1/#!/api/Ext.direct.RemotingProvider-cfg-disableNestedActions)我尝试了这个:
Ext.Direct.addProvider({
url: 'router',
type: 'remoting',
actions: {
TestAction: {
name: 'foo',
len: 1
},
'TestAction.Foo': {
name: 'bar',
len: 1
}
},
namespace: 'MyApp'
});
MyApp.TestAction.Foo.bar();
但是,我现在收到错误'对象没有方法栏'。
有谁知道为什么会这样?
由于
答案 0 :(得分:1)
方法定义必须是对象数组,而不是对象。
这样,没有错误:
Ext.Direct.addProvider({
url: 'router',
type: 'remoting',
actions: {
TestAction: [{ // <= Here, array!
name: 'foo',
len: 1
}],
'TestAction.Foo': [{
name: 'bar',
len: 1
}]
},
namespace: 'MyApp'
});