Component Namespaces

DEX475 - Create Lightning Web Components

📄 第 30 页 🎬 视频课程

课程章节介绍

同学们,今天我们来聊聊组件的命名空间,这个概念很简单,但特别重要。在 Lightning Web Components 里,每个组件都住在某个命名空间下面。 你创建的自定义组件,默认的命名空间是 c,就是小写字母 c。这个小 c 非常万能,不管代码在哪运行——无论这个组织有没有设置自己的命名空间,也不管你的组件是放在非托管包里,还是将来打包成托管包,c 这个命名空间都可以放心用。 Salesforce 官方的基础组件,像 lightning‑button、lightning‑card 这些,全部放在 lightning 这个命名空间里。在过去还没启用 Lightning Web Security 的时候,只能严格用 c 和 lightning 这两个命名空间里的组件,别的都不给用。 但是现在,只要我们开启了 Lightning Web Security,也就是 LWS,情况就灵活多了。启用 LWS 之后,你可以使用任何命名空间里的组件,包括从 AppExchange 安装的托管包自带的组件。LWS 会通过命名空间实现虚拟代码隔离,不同命名空间的代码互不干扰,安全又有条理。 最后记住一点,如果你要打包一个托管包放在 AppExchange 上分发,就必须给你这个包申请一个全局唯一的命名空间前缀。以后所有组件在使用时,都会带上这个前缀,比如 `yourPrefix__myComponent`,用来区分不同的来源。 好,关于命名空间的核心要点就是这些,你明白了吗?

关键词

LWC Lightning Web Components Salesforce