ng-csp
Dyrektywa AngularJS
Przykład
Zmień sposób, w jaki AngularJS zachowuje się w odniesieniu do stylów „eval” i wbudowanych:
<body ng-app="" ng-csp>
...
Definicja i użycie
Dyrektywa ng-csp
służy do zmiany polityki bezpieczeństwa AngularJS.
Z ng-csp
ustawioną dyrektywą, AngularJS nie będzie uruchamiał żadnych funkcji eval i nie będzie wstrzykiwał żadnych stylów wbudowanych.
Ustawienie wartości ng-csp
dyrektywy na no-unsafe-eval
, zatrzyma AngularJS przed uruchamianiem jakichkolwiek funkcji eval, ale pozwoli na wstrzykiwanie stylów wbudowanych.
Ustawienie wartości ng-csp
dyrektywy na
no-inline-style
, zatrzyma AngularJS przed wstrzykiwaniem jakichkolwiek stylów wbudowanych, ale zezwoli na funkcje eval.
Stosowanie ng-csp
dyrektywy jest konieczne podczas tworzenia aplikacji dla rozszerzeń Google Chrome lub aplikacji dla systemu Windows.
Uwaga: Dyrektywa ng-csp
nie wpływa na JavaScript, ale zmienia sposób działania AngularJS, co oznacza: nadal możesz pisać funkcje eval i będą one wykonywane zgodnie z oczekiwaniami, ale AngularJS nie uruchomi własnych funkcji eval. Wykorzystuje tryb zgodności, który może spowolnić czas oceny nawet o 30%.
Składnia
<element ng-csp="no-unsafe-eval | no-inline-style"></element>
Wartości parametrów
Value | Description |
---|---|
no-unsafe-eval no-inline-style |
The value can be empty, meaning neither eval or inline styles are
allowed. The value can be one of the two values described. The value can be both values, separated by a semicolon, but that will have the same meaning as an empty value. |