我的分机不能在多个应用程序加载的对象混搭的工作。
它似乎工作,当我的分机是从由Qlik感第一次加载应用程序。但是,如果我的分机是在两个不同的应用程序,这些作品之一,另一个没有。
不要使用:
qlik.currApp()
不要使用
qlik.currApp(this)
要在混搭中使用多个应用程序的扩展支持。
如果您需要调用扩展对象后面的应用程序功能,那么你可能使用qlik.currApp()
;
qlik.currApp()
给你加载的当前应用程序。但如果只有一个应用程序加载到混搭的罚款。但是,如果有多个应用程序,qlik.currApp()只是给你的第一个应用程序,它加载。
按照Qlik Sense Documentation on the currApp method:
qlik.currApp(参考)
获取对当前应用程序的参考。使用在扩展currApp方法来获取当前显示的应用程序的参考。
图片你有两个应用:A和B. A首先被加载。然后,你还包括来自应用B的对象到混搭。但是对象的类型是一个扩展,并且扩展使用qlik.currApp()
,它是有可能的,这个对象将不能正常工作。该分机将调用函数在一个应用程序,即使它是从应用程序B.
你可以告诉Qlik哪个应用程式要引用。对于你所需要的参考扩展实例。你把它作为扩展代码的paint方法内this引用:
paint: function(§element, layout){
var app = qlik.currApp(this);
// [...]
}
如果你有油漆函数内部另一关闭,你需要保存this
参考。如果没有,这个基准得到由内函数对象覆盖。常见的情况是,保存this
参照that
:
paint: function(§element, layout){
var that = this;
loader.load(assets, function(){
var app = qlik.currApp(that);
// [...]
});
}