Javascript 如何调试ajax代理
我正在尝试使用ExtJs6和Lumen作为后端PHP框架创建简单的crud应用程序。我按照标准文档创建了extJS应用程序。我的extJS正在使用内置sencha服务器(Javascript 如何调试ajax代理,javascript,ajax,extjs,extjs6,Javascript,Ajax,Extjs,Extjs6,我正在尝试使用ExtJs6和Lumen作为后端PHP框架创建简单的crud应用程序。我按照标准文档创建了extJS应用程序。我的extJS正在使用内置sencha服务器(sencha app watch)运行 当我改变 proxy: { type: 'memory', reader: { type: 'json', rootProperty: 'items' } } 在 并将这些侦听器添加到我的代理和存储对象中 beforeLoad
sencha app watch
)运行
当我改变
proxy: {
type: 'memory',
reader: {
type: 'json',
rootProperty: 'items'
}
}
在
并将这些侦听器添加到我的代理和存储对象中
beforeLoad: function(store, operation){ // 1st; no data items
console.log('beforeLoad');
console.log(store.data.items);
},
dataChanged: function(store){ // 2nd; data items populated, controls still empty
console.log('dataChanged');
console.log(store.data.items);
},
load: function(store, records, success){ // 3rd; data items populate, controls show data
console.log('load');
console.log(store.data.items);
}
我希望看到一些带有错误的MessageBox
,或者在浏览器控制台中看到一些消息,但两者都没有。顺便说一句,URL上没有任何内容。因此,有两个主要问题:
- 为什么我的
code和console.log(..
不工作MessageBox
- 有没有办法告诉sencha内置服务器返回一些示例json 特定url上的数据
data
URL上的一些数据。但它仍然没有在我的应用程序中显示。使用内存代理,它可以正常工作
全店级:
完整存储库:
在此处创建的ExtJS应用程序:Sencha内置服务器可以将JSON放入文件中。如果您想从api/GetSomeThing获取JSON,请创建一个包含文件GetSomeThing的文件夹api,其中包含您想要获取的JSON。或者更好的是,使用实时后端对其进行调试。我真的可以推荐。谢谢!我创建了一个名为“data”的文件在我的根文件夹中有以下内容。我可以看到Web服务器正确地返回它。但我仍然看不到我的应用程序中的任何数据,也看不到来自侦听器的错误消息。你可能想在应用商店中尝试
自动加载:true
,而不是在代理上尝试自动加载:true
。非常感谢!它终于成功了!但我仍然不明白l有什么问题监听器。因为监听器也是区分大小写的,即根据apidocs,它们都是小写的。Sencha内置服务器可以提供JSON,如果你把它放入文件中。如果你想从api/GetSomeThing获取JSON,那么创建一个文件夹api,其中包含一个文件GetSomeThing和你想要获取的JSON。或者更好的是,用实时后端调试它。我真的可以推荐。谢谢!我创建了一个名为“数据”的文件在我的根文件夹中有以下内容。我可以看到Web服务器正确地返回它。但我仍然看不到我的应用程序中的任何数据,也看不到来自侦听器的错误消息。你可能想在应用商店中尝试自动加载:true
,而不是在代理上尝试自动加载:true
。非常感谢!它终于成功了!但我仍然不明白l有什么问题监听器。因为监听器也是区分大小写的,即根据apidocs,它们都是小写的。
beforeLoad: function(store, operation){ // 1st; no data items
console.log('beforeLoad');
console.log(store.data.items);
},
dataChanged: function(store){ // 2nd; data items populated, controls still empty
console.log('dataChanged');
console.log(store.data.items);
},
load: function(store, records, success){ // 3rd; data items populate, controls show data
console.log('load');
console.log(store.data.items);
}