从Salesforce Lightning中的自定义组件操作DOM

时间:2019-10-19 12:41:11

标签: javascript salesforce salesforce-lightning

只是从Salesforce开始,这是我面临的问题:

我已经使用Lightning应用程序构建器使用销售分析模板创建了一个闪电页面,并向其中添加了标准组件(Einstein Analytics Dashboard)。现在,我不需要该标准组件的一部分,因此我想隐藏/删除它。但是似乎没有办法编辑标准组件。就我的研究而言,我创建了另一个自定义组件,并添加了两个静态资源-jquery库和一个自定义javascript文件(以隐藏该元素)。我也将自定义组件添加到了我的闪电页面。
重新加载页面后,我可以看到控制台日志(Not found)在浏览器中运行javascript代码,但它对标准组件的元素没有影响。如果我在chrome控制台中运行相同的hide / remove命令,则它可以正常工作(该元素已从DOM中删除),但也只有在我单击inspect元素然后在控制台中运行命令后,才能确定此行为。 任何有关如何从组件操作DOM或编辑标准组件的帮助将不胜感激。谢谢

Test.cmp

<aura:component implements="force:appHostable,flexipage:availableForAllPageTypes,flexipage:availableForRecordHome,force:hasRecordId,forceCommunity:availableForAllPageTypes,force:lightningQuickAction" access="global" >
    <ltng:require  scripts="{!join(',',$Resource.jquery, $Resource.customjs)}"/>
</aura:component>

customjs.js

/* setInterval is used just to compensate for async load of page*/

$(document).ready(function(){
    setInterval(function () {
         if ($(".class_name_of_element").length) {
               $(".class_name_of_element").remove();
               console.log("removed");
         }else{
             console.log("Not found");
         }
    },300);
  });

0 个答案:

没有答案