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也不允許內聯樣式。

該值可以是所描述的兩個值之一。

該值可以是兩個值,用分號分隔,但這與空值具有相同的含義。