小编sra*_*sra的帖子

ExtJs 4回调

我很难尝试找出为什么我的分配丢失了,并且发现回调作用域与我想象的不同。

我要做的是在控制器中创建一个变量,然后尝试将回调传递给该控制器创建的窗口,然后在该窗口上的事件上回调该控制器中的函数。

例如,在我的控制器中,我有:

callWindow: function(){
  var myWin = Ext.Create('MyApp.view.myWin', {doSomething: this.doSomething});
},

doSomething: function(data){
  this.myData = data;
},

useTheData: function(){
  console.log(this.myData);
}
Run Code Online (Sandbox Code Playgroud)

在myWin的控制器中,我有一个偶数处理程序以这种方式调用doSomething:

onBtnClick: function(button){
  var win = button.up('window');
  var data = {id: 1, name: "John"}; // please, don't pay attention to this, it's a record I'm passing to the caller.
  win.doSomething(data);
}
Run Code Online (Sandbox Code Playgroud)

如您所见,在“ doSomething”函数中,我为控制器分配了var myData,其值由窗口的控制器传递。最初,我认为“ doSomething”的范围是调用方控制器,但它是窗口的控制器,这就是为什么useTheData给出错误说this.myData为null的原因。

我已经解决了问题,方法是传递一个名为“ caller:this”的新参数,并在doSomething中接收该参数,并使用它代替“ this”。

问题是,有没有一种简单的方法(步骤较少)?

javascript extjs extjs4 extjs4.1 extjs4.2

2
推荐指数
1
解决办法
1万
查看次数

JsonStore加载记录并将它们标记为幻像

我的JsonStore如此定义:

var data_json = new Ext.data.JsonStore({
    url: '/Game/json_index',
    autoLoad: true,
    id: 'data_json',
    idProperty: 'id',
    fields: [ {name: 'id', type: 'int'}, 'name', {name:'add_date', type:'date', dateFormat: 'M$'}, 'price', 'kind', 'metacritic'],
    listeners: { 'load': function(storename, records, options){
    console.dir(this);
    }},
    writer: new Ext.data.JsonWriter()
})
Run Code Online (Sandbox Code Playgroud)

它收到的JSON的DUMP是这样的:

[
{"id":1,"name":"Guild Wars 2","add_date":"\/Date(1346104800000)\/","price":24.99,"kind":"MMO","metacritic":93},
{"id":2,"name":"Dark Souls: Prepare to Die Edition","add_date":"\/Date(1345759200000)\/","price":45.00,"kind":"actionrpg","metacritic":87},
{"id":3,"name":"Orcs Must Die! 2","add_date":"\/Date(1343599200000)\/","price":15.00,"kind":"action","metacritic":83}
]
Run Code Online (Sandbox Code Playgroud)

JSON被正确解码,商店里满是我的记录,但要注意......可怕的事情发生了!

可怕的事情的屏幕截图

所有记录都标记为phantom = true,这不能让我正确使用ExtJS 3.4.x store.save()功能

我在google上彻底搜索了这个问题,并且(我认为)它与JsonReader没有将记录id与我传递的'id'字段相关联的事实联系起来.我甚至指定了idProperty:'id'.

帮忙吗?我变得绝望,阅读关于创造记录的极端来源是纯粹的痛苦.

extjs store jsonstore extjs3

2
推荐指数
1
解决办法
2045
查看次数

在应用程序设置中将斜杠作为参数传递给url

我有一个extjs应用程序,它将参数发送到带有斜杠的应用程序设置...例如"Tiger/Cheetah",打印报告...我的ssrs报告也将该参数设置得很好...但是当经历一个网页浏览器传递的参数不带斜线的"Tiger/Cheetah"......它需要"Tiger"但报告中没有记录...

我试着像这样替换/和%2f

Tiger%2fCheetah
Run Code Online (Sandbox Code Playgroud)

它不起作用......

还有其他方法吗?

extjs reporting-services ssrs-2008 ssrs-2012

2
推荐指数
1
解决办法
1万
查看次数

使用ExtJS-4X或javascript获取视口高度

我想使用ExtJs或本机javascript获取视口的高度.

我怎么能得到这个高度?我没有使用任何extjs视口容器.

如果不能使用ExtJs那么我怎样才能找到视口的确切高度?

谢谢!!

javascript extjs extjs4 extjs4.1 extjs4.2

2
推荐指数
1
解决办法
5698
查看次数

ExtJS表单加载

表格加载后哪个事件会触发?我的要求是在视图加载的时候基于某些控制设置为禁用模式(只读)所以如何处理这个(哪个事件)我试过这个formpanel.on({ actioncomplete: function (form, action) {}但是没有被解雇

提前致谢

extjs

1
推荐指数
1
解决办法
6019
查看次数

向后倒数

我有一个像这样组织的列表:

[('down', 0.0098000000000000309), 
('up', 0.0015000000000000568), 
('down', 0.008900000000000019), 
('down', 0.023300000000000098), 
('down', 0.011599999999999944), 
('down', 0.0027000000000000357), 
('up', 0.0023999999999999577), 
('up', 0.0065000000000000613), 
('down', 0.0057000000000000384), 
('down', 0.018400000000000083), 
('up', 0.009300000000000086), 
('down', 0.0038000000000000256), 
('down', 0.00050000000000005596), 
('up', 0.0082000000000000961), .....
Run Code Online (Sandbox Code Playgroud)

什么是"向后比较"的最佳方式?,基本上我想要返回"是"(或者其他......)如果我们得到一系列的2"下降",接着是一个"向上",第二个值低于0.0095.

我希望他有道理..

python

1
推荐指数
1
解决办法
403
查看次数

如何在Python中的列中左对齐数字?

我正在尝试编写一个通过此doctest的函数:

Prints a table of values for i to the power of 1,2,5 and 10 from 1 to 10
left aligned in columns of width 4, 5, 8 and 13
>>> print_function_table()
i   i*2 i*5    i*10
1   1    1       1
2   4    32      1024
3   9    243     59049
4   16   1024    1048576
5   25   3125    9765625
6   36   7776    60466176
7   49   16807   282475249
8   64   32768   1073741824
9   81   59049   3486784401
10  100  100000  10000000000
Run Code Online (Sandbox Code Playgroud)

我觉得我几乎就在那里,但我似乎无法左对齐我的列.

我的代码是:

def print_function_table(): …
Run Code Online (Sandbox Code Playgroud)

python-2.7

0
推荐指数
1
解决办法
3051
查看次数