Sencha Touch代理的Javascript回调

时间:2013-11-06 15:02:51

标签: javascript callback sencha-touch-2 jsonp

我不明白如何从Sencha Touch的其他域获取信息。我想用从javascript中检索到的数据来填充我的商店,这些数据来自另一个网络服务。

对于测试,我在simpleTest.js中编写了以下代码:

function hello(){
"test":[{ "text": "hello"}];
}

商店看起来像这样:

Ext.define("AccessibleMap.store.Teststore", {
    extend: "Ext.data.Store",
    config: {
        model: "AccessibleMap.model.Testmodel",
        autoLoad: true,
        proxy:{
            type: 'jsonp',
            url: 'http://test.accessiblemap.square7.ch/live%20access/scripts/simpleTest.js',
            reader:{
                type : 'json',
                rootProperty : 'test'
            }
        }
    }
});

错误消息显示,它无法找到该页面。

Uncaught SyntaxError: Unexpected token :            simpleTest.js:2  

问题似乎是回调。我该如何解决这个问题?

如何在javascript中创建回调?我是否需要使用json将返回的字符串字符串化?

1 个答案:

答案 0 :(得分:0)

你需要告诉JavaScript输出json,你不能只写它。你的代码应该是:

function hello(){
    document.write('{"test":[{ "text": "hello"}]}');
}

您还缺少json {}

周围的大括号

当您开始实际编写正确的回调时,还需要注意一些其他事项。您可以使用Ext.JSON类对json进行编码/解码(Ext.JSON.encode / Ext.JSON.decode)。我个人使用PHP后端,只使用本机PHP函数来吐出我的json。