AngularJS ng-csp 指令

AngularJS 參考手冊 AngularJS 參考手冊


AngularJS 實例

修改 AngularJS 中關於 "eval" 的行為方式及內聯樣式:

<body ng-app="" 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% 的性能。


語法

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

參數值

描述
no-unsafe-eval
no-inline-style
值可設置為空,意味著 eval 和 內聯樣式都不被允許。
可以設置其中一個值。
你也可以同時設置兩個值使用分號隔開,但這與留空的效果是一樣的。

AngularJS 參考手冊 AngularJS 參考手冊