首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >extjs -从外部Javascript向Store添加数据

问extjs -从外部Javascript向Store添加数据
EN

Stack Overflow用户
提问于 2012-06-07 14:00:51
回答 2查看 1.6K关注 0票数 0

我有一个使用javascript MVC结构的存储的图表,我通过另一个EXTJS4文件从一个在线api中获取数据,我想知道是否可以将数据添加到外部的存储中,以便在我调用store.load()时加载。

外部js不是extjs或mvc的一部分,它在我的图表后面的页面上运行。我必须把所有的逻辑都转移到extjs控制器中吗?有没有办法从外部js调用extjs方法?谢谢。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-06-27 06:10:14

最终使用以下代码访问本地js文件。

代码语言:javascript
复制
var url = "url.js";
var onload = function () {
    console.log('url loaded');
};
var onerror = function () {
    console.log('error loading analytics functions');
};
Ext.Loader.injectScriptElement(url, onload, onerror, scope);

确保在app.js中以如下方式启动Ext.Loader:

代码语言:javascript
复制
Ext.Loader.setConfig({enabled:true});
票数 0
EN

Stack Overflow用户

发布于 2012-06-07 17:52:11

确实存在从特定于ExtJS的代码外部调用ExtJS对象上的方法的方法,毕竟它只是JS。

您将需要从您的ExtJS代码中公开一个方法,该方法返回一个引用来表示图表,如下所示(在ExtJS代码中):

代码语言:javascript
复制
function getChart() {

    return Ext.getCmp('myChartID');

}

然后在你的外部JS中,你可以这样做:

代码语言:javascript
复制
var data = ...; // This is where you can get your external data

var chart = getChart();

chart.load(data);

这取决于从ExtJS公开方法的能力,因此您需要能够引用。

在ExtJS MVC应用程序中尝试并调用该方法来检索数据可能会更容易。假设您的外部JS文件已加载,它可能会返回一个对自身的引用,以便您可以调用它的方法。因此,考虑到这一点,只需从ExtJS应用程序内部调用所需的方法作为替代。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10926445

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档