0

下面我有一个工作示例...但是有一个问题... html 中的 node.title 工作正常...但是当{{node.title}}进入 ng-include 文件时...不起作用。只有全局 $scope 是可见的,而不是“节点”对象

var element = angular.element($(".withOptions"));
var scope = element.scope();
var injector = element.injector();
var compile = injector.get('$compile');


compile(
       '<li id="list_77"><div><i class="icon20 i-folder-open"></i>'+node.title+' <i class="icon16 i-arrow-down-2"></i><div ng-include="\'http://localhost/test/public/theme\'"></div></div></li>'
       )(scope).appendTo($(".withOptions"));
4

1 回答 1

0

当您调用时,您的代码会引发异常:

compile(
       '<li id="list_77"><div><i class="icon20 i-folder-open"></i>'+node.title+' <i class="icon16 i-arrow-down-2"></i><div ng-include="\'http://localhost/test/public/theme\'"></div></div></li>'
       )(scope).appendTo($(".withOptions"));

因为调用的时候没有appendTo方法compile("yourtemplate")(scope)

你应该试试:

compile(
           '<li id="list_77"><div><i class="icon20 i-folder-open"></i>'+node.title+' <i class="icon16 i-arrow-down-2"></i><div ng-include="\'http://localhost/test/public/theme\'"></div></div></li>'
           )(scope,function(clonedElement,scope){
                clonedElement.appendTo($(".withOptions"));
          });
于 2013-11-10T12:35:07.927 回答