Access Content Asset Files

DEX475 - Access Salesforce Resources

📄 第 205 页 🎬 视频课程

课程章节介绍

好,我们这节课来讲一个在Lightning Web Components里很有用,但你可能还没用过的功能——内容资产文件,英文叫Content Asset。 你可以把它理解为一种特殊的静态资源。平时我们放图片、CSS,都会用静态资源对吧?内容资产说白了,就是专门为自定义应用和Experience Builder模板设计的一种资源文件。它在使用上跟静态资源很像,但它的定位更明确,就是给应用和模板提供内容用的。 那我们怎么在组件里用呢?很简单,直接从@salesforce/contentAssetUrl这个模块导入就行了。导入后,你会拿到一个资源的URL,可以在组件里用。 接下来,重点讲一下命名规则。你给内容资产起名字的时候,规则完全可以参考静态资源:只能有字母、数字、下划线,必须以字母开头,不能有空格,而且整个组织里面名字不能重复。比如你可以取名叫“hero_banner”,但别叫“hero banner”或者“123hero”。 跟静态资源一样,一个内容资产可以是一个单独的文件,比如一张PNG图片,也可以是一个压缩包,比如zip文件。如果是一个压缩包,你就要用到一个叫做“pathInArchive”的参数,来指定你要访问压缩包里面具体哪个文件的路径。就像从一个文件夹里点开某个文件一样。 接下来说说在Salesforce DX项目里,这些文件放哪儿。你要把内容资产文件放在,force-app/main/default/contentassets, 这个目录下面。注意,这个目录下面不能有子目录,就是直接放文件。而且每个资产文件都要有一个对应的.asset-meta的伴生文件,用来描述这个资产的元数据,比如它是个什么类型的,是图片还是文档。 最后,如果你想看看实际怎么用的,可以去,lwc-recipes,这个示例仓库里找一个叫,miscContentAsset,的组件,它演示了如何在组件中使用内容资产,跟着例子学是最快的。 所以总结一下,内容资产就是专门给应用和Experience Builder模板准备的、方便管理和引用的静态文件,命名规则和静态资源一样,支持压缩包,DX项目有固定存放目录,并且你会有一个伴生的元数据文件。掌握了这个,你的组件内容管理就更灵活了。

关键词

LWC Lightning Web Components Salesforce