使用ExtJS 5.1时,我总是收到此错误:
Uncaught Error: [Ext.ClassManager] Invalid namespace, must be a string @ext-all-debug.js:8430
parseNamespace @ ext-all-debug.js:8430
createNamespaces @ ext-all-debug.js:8490
(anonymous function) @ ext-all-debug.js:4450
onBeforeLaunch @ Bundle.js?_.dc=1476694441934:227
onProfilesReady @ ext-all-debug.js:54622
constructor @ ext-all-debug.js:54616
AppTest.$application @ ext-all-debug.js:7660
(anonymous function) @ ext-all-debug.js:54856
invoke @ ext-all-debug.js:10477
doInvokeAll @ ext-all-debug.js:10517
invokeAll @ ext-all-debug.js:10486
unblock @ ext-all-debug.js:10596
triggerReady @ ext-all-debug.js:11090
checkReady @ ext-all-debug.js:11194
load @ ext-all-debug.js:10969
require @ ext-all-debug.js:10882
triggerReady @ ext-all-debug.js:11065
checkReady @ ext-all-debug.js:11194
onLoadSuccess @ ext-all-debug.js:11011
notify @ ext-all-debug.js:862
processLoadedEntries @ ext-all-debug.js:841
notifyRequests @ ext-all-debug.js:1308
complete @ ext-all-debug.js:1157
(anonymous function) @ ext-all-debug.js:1163
答案 0 :(得分:0)
好吧,如果你看一下堆栈跟踪,你会发现问题似乎出现在Bundle.js第227行,因为这是跟踪中提到的第一个非sencha行:
ns = Ext.namespace(me.name);
如果您尝试
console.log(me.name);
你会发现它是undefined
,因为从5.0.0开始,Sencha已经越来越多地转向getter
和setter
方法,所以你最好的选择是
console.log(me.getName());