当前位置:AngularJS API / ng / 服务(service) / $sce
$sce
$sce 服务是AngularJs提供的一种严格上下文转义服务。
严格的上下文转义(SCE)是一种需要在一定的语境中导致AngularJS绑定值被标记为安全使用语境的模式。由用户通过ng-bind-html绑定任意HTML语句就是这方面的一个例子。我们称这些上下文转义为特权或者SCE。
下面代码是简化了的ngBindHtml实现(当然,这不是完整版ngBindHtml源码):
var ngBindHtmlDirective = ['$sce', function($sce) { return function(scope, element, attr) { scope.$watch($sce.parseAsHtml(attr.ngBindHtml), function(value) { element.html(value || ''); }); }; }];
angular.module(“myApp”,[]).config([“$sceProvider”,function($sceProvider){ $sceProvider.enabled(true/false); }]);
$sce();
返回一个boolean,指示是否可启用SCE。
将Angular表达式转换为一个函数。这类似$parse解析并且当表达式是常量时是相同的。否则,它将调用$sce.getTrusted(type,result)将表达式包装。
参数 | 类型 | 描述 |
---|---|---|
type | string |
在SCE的上下文的使用的结果的类型。 |
expression | * |
被编译的字符串表达式。 |
代表$sceDelegate.trustAs。
参数 | 类型 | 描述 |
---|---|---|
type | * |
上下文中能安全的被使用的值,如url,resourceUrl,html,js和css。 |
value | * |
需要被认为是安全或者值的信赖的值。 |
$sceDelegate.trustAs($sce.HTML,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
value | * |
被信任的值。 |
$sceDelegate.trustAs($sce.URL,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
value | * |
被信任的值。 |
$sceDelegate.trustAs($sce.RESOURCE_URL,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
value | * |
被信任的值。 |
$sceDelegate.trustAs($sce.JS,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
value | * |
被信任的值。 |
代表$sceDelegate.getTrusted。因此,得到了$sce的结果。如果查询的上下文类型是一个创造型的类型,则调用trustAs()并且返回原来提供的值。如果这个条件不满足,则抛出一个异常。
$sceDelegate.getTrusted ($sce.HTML,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
value | * |
通过$sce.getTrusted执行后的值。 |
$sceDelegate.getTrusted ($sce.CSS,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
value | * |
通过$sce.getTrusted执行后的值。 |
$sceDelegate.getTrusted ($sce.URL,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
value | * |
通过$sce.getTrusted执行后的值。 |
$sceDelegate.getTrusted ($sce.RESOURCE_URL,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
value | * |
通过$sce.getTrusted执行后的值。 |
$sceDelegate.getTrusted ($sce.JS,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
value | * |
通过$sce.getTrusted执行后的值。 |
$sce.parseAs ($sce.HTML,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
expression | string |
被编译的字符串表达式。 |
$sce.parseAs ($sce.CSS,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
expression | string |
被编译的字符串表达式。 |
$sce.parseAs ($sce.URL,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
expression | string |
被编译的字符串表达式。 |
$sce.parseAs ($sce.RESOURCE_URL,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
expression | string |
被编译的字符串表达式。 |
$sce.parseAs ($sce.JS,value)的快捷方式。
参数 | 类型 | 描述 |
---|---|---|
value | string |
被编译的字符串表达式。 |