Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AngularJS$compile不是插值模板_Angularjs - Fatal编程技术网

AngularJS$compile不是插值模板

AngularJS$compile不是插值模板,angularjs,Angularjs,我正在尝试使用$compile从模板生成HTML,以传递给外部组件。所有操作都使用$interpolate,但我需要模板中的指令,并且必须切换到$compile。我看到的所有其他$compile示例都在一个指令中使用,所以我认为这不是一个重复的问题 下面是一些说明问题的代码 视图: 这是一个测试: 控制器: angular.module('MyApp', []).controller('TestCtrl', function ($scope, $compile, $sce) { var

我正在尝试使用$compile从模板生成HTML,以传递给外部组件。所有操作都使用$interpolate,但我需要模板中的指令,并且必须切换到$compile。我看到的所有其他$compile示例都在一个指令中使用,所以我认为这不是一个重复的问题

下面是一些说明问题的代码

视图:


这是一个测试:
控制器:

angular.module('MyApp', []).controller('TestCtrl', function ($scope, $compile, $sce) {
   var linker = $compile('<ul><li ng-repeat="v in values">{{v}}</li></ul>');
   var scope = $scope.$new(true);
   scope.values = ['a', 'b', 'c'];
   var html = linker(scope).html();
   $scope.valueList = $sce.trustAsHtml(html);
});
angular.module('MyApp',[]).controller('TestCtrl',function($scope,$compile,$sce){
var linker=$compile('
  • {{v}
'); 变量范围=$scope.$new(true); scope.values=['a','b','c']; var html=linker(scope.html(); $scope.valueList=$sce.trustAsHtml(html); });

ng bind html
不编译指令。。。只简单地注入html。带有模板的自定义指令将起作用我不希望ng bind html编译指令;这只是一个例子来说明这个问题。我试图得到一个插值的HTML字符串,它将被传递给一个外部组件,但我不想在这里把事情弄得如此复杂。
angular.module('MyApp', []).controller('TestCtrl', function ($scope, $compile, $sce) {
   var linker = $compile('<ul><li ng-repeat="v in values">{{v}}</li></ul>');
   var scope = $scope.$new(true);
   scope.values = ['a', 'b', 'c'];
   var html = linker(scope).html();
   $scope.valueList = $sce.trustAsHtml(html);
});