AngularJS ng-csp 指令

定义和用法

ng-csp 指令用于更改 AngularJS 的安全策略。

设置 ng-csp 指令后,AngularJS 将不会运行任何 eval 函数,也不会注入任何内联样式。

ng-csp 指令的值设置为 no-unsafe-eval,将阻止 AngularJS 运行任何 eval 函数,但允许注入内联样式。

ng-csp 指令的值设置为 no-inline-style,将阻止 AngularJS 注入任何内联样式,但允许 eval 函数。

为 Google Chrome 扩展或 Windows 应用开发应用程序时,需要使用 ng-csp 指令。

注意:ng-csp 指令不会影响 JavaScript,但它改变了 AngularJS 的工作方式,这意味着:你仍然可以编写 eval 函数,它们将按你期望的方式执行,但 AngularJS 不会运行自己的 eval 函数。它使用一种兼容模式,这可能会使评估时间减慢高达30%。

实例

改变AngularJS在 "eval" 和内联样式方面的行为:

<body ng-app="" ng-csp>
...

亲自试一试

语法

<element ng-csp="no-unsafe-eval | no-inline-style"></element>

参数

参数 描述
  • no-unsafe-eval
  • no-inline-style

值可以为空,意味着既不允许eval也不允许内联样式。

该值可以是所描述的两个值之一。

该值可以是两个值,用分号分隔,但这与空值具有相同的含义。