Javascript 从变量中选择一个值

Javascript 从变量中选择一个值,javascript,extjs,extjs4,extjs4.1,extjs-mvc,Javascript,Extjs,Extjs4,Extjs4.1,Extjs Mvc,在Extjs中,我试图从变量存储中选择一个值应计 我试过: var newStore = Store.data.items[0].data.accrued; 上面的一个不起作用。我得到一个错误: 未捕获的TypeError:无法读取未定义的属性“数据” 每当我添加项[0],它都会使变量未定义 当我检查时: var newStore = Store.data.items.length; 输出为:0/ 但是我可以看到,Store变量中有一些项目,如上图所示。无论如何,我只想从变量存储中获取应计

在Extjs中,我试图从变量
存储
中选择一个值
应计

我试过:

var newStore = Store.data.items[0].data.accrued;
上面的一个不起作用。我得到一个错误:

未捕获的TypeError:无法读取未定义的属性“数据”

每当我添加
项[0]
,它都会使变量未定义

当我检查时:

var newStore = Store.data.items.length;
输出为:0/

但是我可以看到,
Store
变量中有一些项目,如上图所示。无论如何,我只想从变量
存储
中获取
应计
的值

我还检查了:

var newStore = Store.data.items;

输出为:[]存储加载是异步的。记录日志时,尚未加载值


控制台始终显示对象的最新版本。您需要侦听存储加载事件。

存储加载是异步的。记录日志时,尚未加载值


控制台始终显示对象的最新版本。您需要收听store load事件。

嘿,格林先生,您有时应该查看API,因为这非常简单;)

Store.on('load', function(store,records){ 
    records[0].data.accrued; 
}, this, {single:true})
更新-更深入一点

单词将事件的侦听器应用于组件。它将适用于mixin类,其中我应用的最后一个参数标识该侦听器在被调用一次后应该被删除。这对于匿名侦听器很有用,因为您无法以其他方式注销它们

加载(此、记录、成功、eOpts)

参数

  • 此:Ext.data.Store
  • 记录:Ext.data.Model[]记录数组
  • 成功:布尔值如果操作成功,则为True
  • eOpts:对象传递给Ext.util.Observable.addListener的选项对象

所以records参数包含当前加载操作返回的所有记录。

嘿,格林先生,您有时应该查看API,因为这是非常直接的;)

Store.on('load', function(store,records){ 
    records[0].data.accrued; 
}, this, {single:true})
更新-更深入一点

单词将事件的侦听器应用于组件。它将适用于mixin类,其中我应用的最后一个参数标识该侦听器在被调用一次后应该被删除。这对于匿名侦听器很有用,因为您无法以其他方式注销它们

加载(此、记录、成功、eOpts)

参数

  • 此:Ext.data.Store
  • 记录:Ext.data.Model[]记录数组
  • 成功:布尔值如果操作成功,则为True
  • eOpts:对象传递给Ext.util.Observable.addListener的选项对象

所以records参数包含当前加载操作返回的所有记录。

Store还是Store?第一个字母大写的是“S”。对不起,是错别字。它是(x in Store.data.items)console.log(x)的
Store
@JinzhaoWuTry
为了确保索引确实是
0
?@techfoobar它没有显示任何内容,因为
Store.data.items
是[](我不知道如何)。我不知道这是否有帮助,但请尝试此
Ext.getStore('Store_id')。data.items[0]。data.predured
Store还是Store?第一个字母大写的是“S”。对不起,是错别字。它是(x in Store.data.items)console.log(x)的
Store
@JinzhaoWuTry
为了确保索引确实是
0
?@techfoobar它没有显示任何内容,因为
Store.data.items
是[](我不知道如何)。我不知道这是否有用,但请尝试使用此
Ext.getStore('Store\u id')。data.items[0]。data.predured
感谢您的回复。你能告诉我怎么做吗?谢谢你的回复。你能告诉我怎么做吗?我将console.log()保存到生成的变量中,并检查变量值。它显示未定义的
。(我仍然无法理解您在这里做了什么,我正在处理它)嘿,它的
记录[0]。data.predured
:)。请更新它。现在工作很好。谢谢+1。@格林先生,对不起,我弄错了。我还扩展了答案,将console.log()保留到生成的变量,并检查变量值。它显示未定义的
。(我仍然无法理解您在这里做了什么,我正在处理它)嘿,它的
记录[0]。data.predured
:)。请更新它。现在工作很好。谢谢+1。@格林先生,对不起,我弄错了。我还扩展了答案。