Locker Compliance — Common Violations & Fixes

DEX475 - JavaScript

📄 第 155 页 🎬 视频课程

课程章节介绍

同学们,我们来看这一页幻灯片,讲的是在使用 Lightning Web Components 的时候,引入第三方 JavaScript 库最容易遇到的四种违规类别。这些基本上涵盖了咱们在收件箱合规扫描里看到的大多数问题。一旦把第三方库放到组件里,安全扫描工具,就是那个 Inbox,就会帮你检查出来。别担心,每一种都有对应的修复方法,我们一个一个说。 第一种,叫“意外的全局值”。这是什么情况呢?就是你在代码里,把库赋给了一个没有用 let、const 或者 var 声明的变量。比如你写了个 `myLib = someLibrary()`,在 LWC 的严格模式下这就会被逮到,因为它会不小心污染全局作用域。修复其实很简单,你需要显式地把这个库挂到 window 对象上,加上命名空间,写成 `window.myLib = someLibrary()`,这样严格模式就知道你是故意的,就不会报错了。 第二种,是“内容安全策略违规”,简称 CSP 违规。Lightning 平台为了安全,禁止使用像 `eval()`、`new Function()` 或者动态创建 `