如何制定一个Qlik词义衍生,在混搭与多个应用程序的工作原理

问题描述 投票:0回答:1

我的分机不能在多个应用程序加载的对象混搭的工作。

它似乎工作,当我的分机是从由Qlik感第一次加载应用程序。但是,如果我的分机是在两个不同的应用程序,这些作品之一,另一个没有。

qliksense
1个回答
1
投票

TL; DR

不要使用:

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);
        // [...]
    });
}
© www.soinside.com 2019 - 2024. All rights reserved.