Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/472.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Ext JS应用程序中的部署:更改存储中的URL_Javascript_Deployment_Extjs - Fatal编程技术网

Javascript Ext JS应用程序中的部署:更改存储中的URL

Javascript Ext JS应用程序中的部署:更改存储中的URL,javascript,deployment,extjs,Javascript,Deployment,Extjs,我正在为我正在构建的应用程序制定构建过程(使用Ext JS+另一个应用程序的后端),并尝试看看是否有一种“最佳实践”方法可以将本地URL(例如data/my data.json)更改到开发服务器的后端,然后再更改到生产服务器的后端 在我的门店中,我目前拥有以下代码: Ext.define('APP.store.DataRecords', { extend: 'Ext.data.Store', model: 'APP.model.DataRecord', autoLoad:

我正在为我正在构建的应用程序制定构建过程(使用Ext JS+另一个应用程序的后端),并尝试看看是否有一种“最佳实践”方法可以将本地URL(例如data/my data.json)更改到开发服务器的后端,然后再更改到生产服务器的后端

在我的门店中,我目前拥有以下代码:

Ext.define('APP.store.DataRecords', {
    extend: 'Ext.data.Store',
    model: 'APP.model.DataRecord',
    autoLoad: true,

    proxy: {
        type: 'ajax',
        api: {
            read: 'data/data-records.json',
            update: 'data/update-data-records.json'
        },
        reader: {
            type: 'json',
            root: 'records',
            successProperty: 'success'
        }
    }
});
在运行sencha build命令时,理想情况下,我希望将存储转换为如下内容:

Ext.define('APP.store.DataRecords', {
    extend: 'Ext.data.Store',
    model: 'APP.model.DataRecord',
    autoLoad: true,

    proxy: {
        type: 'ajax',
        api: {
            read: 'http://mydevserver/.../data-records.json',
            update: 'http://mydevserver/.../update-data-records.json'
        },
        reader: {
            type: 'json',
            root: 'records',
            successProperty: 'success'
        }
    }
});
我想,如果没有任何“直接”方法,我将需要构建一个额外的脚本,该脚本将首先重新映射所有URL,然后调用sencha编译器

p.S.我知道,通常情况下,通过使用“相对”URL,这一切都是透明的,但我与之交互的后端有一些限制,这就阻止了这一点

想法


提前谢谢

我建议在连接到您的商店时不要使用完整的URL。如果您正在使用Ajax调用并试图转到其他域名,则此类调用将被视为跨站点调用,浏览器将阻止它们。

在您的app.json中

/**
*覆盖对象以设置特定于生成环境的
*设置。
*/
“生产”:{
“api_url”:http://example.com"
},
“测试”:{
“api_url”:http://localhost:3000"
},
“发展”:{
“api_url”:http://localhost:3000"

},
使用完整的URL肯定会引起问题,但在这种情况下,我应该能够很快将其从AJAX切换到JSONP。然而,目前我已经采用了只使用相对URL的方法,这可能会在以后的过程中导致问题。仍然有兴趣听取任何人是否有可能使用的替代方法。