将值从一个视图发送到另一个 ExtJS 4
Posted
技术标签:
【中文标题】将值从一个视图发送到另一个 ExtJS 4【英文标题】:Send value from one view to another ExtJS 4 【发布时间】:2018-06-29 15:48:09 【问题描述】:我想将值从一个视图发送到另一个视图,我有一个代码在 ExtJS 6
中有效,但在 ExtJS 4
中无效。
这是从第一个开始的:
var test = Ext.create('test.text',
delayedRenderTo: container_id,
id: 'messageBox-' + meta.rowIndex,
viewModel:
data:
value: value
);
并且我们这样绑定它:
Ext.define('test.text',
extend: 'Ext.Panel',
layout:
type: 'vbox',
align: 'stretch',
overflow: 'scroller',
,
items: [
xtype: 'textareafield',
grow: true,
growMin: 30,
growMax: 120,
disabled: true,
fullscreen: true,
bind:
value: 'value',
,
fieldStyle: 'font-weight:bold;'
]
);
ExtJS 4
的替代方法是什么?
【问题讨论】:
【参考方案1】:ViewModel 是在 Ext JS 5 中引入的,这就是它在 Ext JS 4 中不起作用的原因。
要在 Ext JS 4 中执行此操作,您必须找到组件(本例中为 textareafield
),然后执行 setter(本例中为 setValue
)。在 Ext JS 4 中都是手动的。
获取组件取决于很多事情,但最好的方法是使用 ComponentQuery,这取决于执行它的代码的位置。首先,您必须获取您的test.text
实例,然后使用comp.child('textareafield')
。我不能给你一个灵丹妙药的例子,因为它取决于许多因素,但使用组件的 down
、child
、query
、up
方法是一个好的开始,它们都有不同的目的。
【讨论】:
以上是关于将值从一个视图发送到另一个 ExtJS 4的主要内容,如果未能解决你的问题,请参考以下文章