首页 > 其他分享 >salesforce零基础学习(一百三十五)项目中的零碎知识点小总结(七)

salesforce零基础学习(一百三十五)项目中的零碎知识点小总结(七)

时间:2024-03-27 22:44:55浏览次数:20  
标签:知识点 salesforce ref Flow html user lwc 一百三十

本篇参考:

https://trailhead.salesforce.com/content/learn/modules/flow-implementation-2/debug-flows-as-another-user

https://developer.salesforce.com/docs/platform/lwc/guide/create-components-dom-work.html?q=ref#refs

https://developer.salesforce.com/docs/platform/lwc/guide/reference-directives.html

 一. Flow debug as other user

随着项目上的Flow的使用越来越多,我们也需要多关注Flow的一些有用的功能。今天整理的是Debug Flow as other user。我们在项目中偶尔有需求是针对指定的Profile/Role进行某些操作,比如我们的需求是当User Profile是Custom: Sales Profile 并且创建Account数据时,不允许创建Account Type是Channel Partner / Reseller的数据。我知道这个需求可以通过Validation Rule解决,这里只是举一个例子引出我们后续的内容。

 当我们创建好这个flow以后,我们最好在flow active以前做好所有的测试,所以debug是必不可少的环节。因为我们当前的user并不是这个profile,所以如何进行测试呢? 我们可以在Process Automation Settings中启用标红的选项。

当我们勾选以后进入Flow,点击debug按钮以后勾选 Run flow as another user便可以解决此种类似的问题。

 二. lwc中使用Refs获取元素

 我们以前获取元素可以通过template.querySelector,除此以外,我们还可以通过ref标记component,然后js端快速获取。以下为简单例子:

refSample.html: 组件元素通过lwc:ref属性设置

<template>
    <lightning-input type="text" label="Demo" lwc:ref="demo"></lightning-input><br/>
    <lightning-button label="output Demo Value" onclick={handleOutputAction}></lightning-button><br/>
    {outputValue}
</template>

refSample.js:js中可以直接使用全局变量 this.refs. + 在html中声明的名称即可获取到对应的组件元素。

import { LightningElement, track, wire } from 'lwc';

export default class refSample extends LightningElement {
    outputValue;
    handleOutputAction(event) {
        //以下两种写法都可以正常的获取
        this.outputValue = this.refs.demo.value;
        // this.outputValue = this.template.querySelector('lightning-input').value;
    }
}

lwc:ref也是有一些限制的:

  • 只读类型,不能set value;
  • 不能用于 template或者slot元素上。比如这种声明就会报错。
    <template lwc:ref="myTemplate"></template>
  • 不能用于for:each 或者 iterator循环中。
  • 使用前需要声明,如果获取不到,返回undefined。(这里做一下扩展,我们在开发时,可能html端声明了lwc:ref但是这个在 template:if中,如果值为false,组件不渲染,后台通过 refs获取还是为 undefined,所以获取以后尽量的判断一下是否 undefined)

总结:本篇整理了两个项目中可能会用到的小特性,篇中有错误地方欢迎指出,有不懂欢迎留言。

标签:知识点,salesforce,ref,Flow,html,user,lwc,一百三十
From: https://www.cnblogs.com/zero-zyq/p/18099386

相关文章

  • 【知识点】接口和抽象类的区别
    相同点:都不能实例化都可以被实现或者继承继承或者实现的子类需要实现全部抽象方法,否则需要声明为抽象类不同点:不同点抽象类接口声明abstractinterface继承/实现extendsimplements构造器可以有构造器不能有构造器方法抽象方法和具体方法抽象方法......
  • 产品知识点整理01
    产品知识点整理24.3.9作为一个准备校招的萌新本科生,在自己的校招职业选择中加上“产品岗”是一件很冒险的行为。这个念头已经在脑海里浮现过很多次,尽管他的职业要求“很虚”,可能涉及学历关,可能职业潜力有限,可能相比起技术岗更具有不确定性……但是如果你想做,现在不做,以......
  • Salesforce宣布将停用Workflow Rules和Process Builder!
    在近期的公告中,Salesforce透露在2025年12月31日之后将不再支持WorkflowRules和ProcessBuilder。Salesforce敦促用户在截止日期前将其自动化流程迁移到FlowBuilder,以确保不间断的支持和漏洞修复。此举正值Salesforce将重点转向更现代、可扩展、低代码的自动化解决方案FlowBui......
  • 软考高项第四版必背知识点简略版6
    第六章项目管理概论6.1PMBOK的发展6.2项目基本要素项目是为创造独特的产品、服务或成果而进行的临时性工作。开展项目是为了通过可交付成果达成目标。目标是所指向的结果、要取得的战略地位,要达到的目的,要获得的成果、要生产的产品或者要提供的服务。可交付成果是......
  • CocosCtreator知识点4:Creator中的坐标系和节点属性详解
    Creator中的坐标系和节点属性详解在CocosCreator中,游戏场景(Scene)是开发时组织内容的基础,也是呈现给玩家所有游戏内容的载体。而节点是场景的基础组成单位。可以把场景理解为组织内容的空间或平台,所有的内容(节点)通过其位置属性确定在该空间中的某个位置呈现。而为了确定空间......
  • Linux - 第二节知识点
    无论是什么重定向,如果要写入的文件不存在,它会先创建一个3cat-n文件名会对输出结果所有行进行编号 cat-b 文件名会对输出结果非空行进行编号 cat-s文件名不输出多行空行,当有多行空行时,就会被压缩成一行空行more-行数文件名按照要求看多少行都可以less-行......
  • Linux - 第一节知识点
    一.ls指令ls显示当前目录下所有的文件列表alt+enter:让xshell自动全屏和取消全屏ls-a显示隐藏文件pwd显示当前命令行在进行操作时所处的目录在哪mkdir建立文件夹mkdir-p文件名/文件名一次可以建立多个目录redir文件名删除空目录rm文件名删除文件,不能删......
  • 【知识点】JDK 8-21 新特性总结
    只列出主要新特性Java8Lambda表达式函数式接口StreamAPI新的日期和时间API默认方法Optional类Java9-11Java9模块化系统G1成为默认垃圾回收器(之前是CMS,ConcurrentMark-Sweep,即新生代+老年代标记清除。)String存储结构优化(之前内部是char[],现在是byte[],更......
  • 【知识点】高并发中的集合
    本文旨在总结多线程情况下集合的使用Java中的集合大致以下三个时期:第一代线程安全集合类以Vector、HashTable为代表的初代集合,使用synchronized在修饰方法,从而保证线程安全。缺点:效率低。代码示例Vectoradd方法源码/***Appendsthespecifiedelementtotheendoft......
  • 知识点
    在JavaScript中,const是用来声明一个常量的关键字。使用const声明的变量是常量,其值在声明后不能被修改。换句话说,一旦使用const声明一个变量并初始化赋值,就无法再对其重新赋值。下面是一个简单的示例:javascriptCopyCodeconstPI=3.14159;//尝试修改常量的值会导致错......