从angular.js中的多个partials(动态加载)中查看

时间:2014-12-16 13:35:28

标签: javascript jquery angularjs

我想创建一个由多个部分组成的视图,这些部分将根据内容类型动态加载。我是angular.js的新手,我唯一的想法是在控制器中这样做:

$(elem).html(string_with_src);
$compile(elem.contents())($scope);

......它有效。问题是我想将部分源放在单独的文件中并通过jquery加载它们:

$.get(source.html, function( data ) {
  elem.html( data );
  $compile(elem.contents())($scope);
});

但这不起作用。该模板不是由angular.js编译的。 有人可以向我解释为什么它不起作用或如何做得更好?

1 个答案:

答案 0 :(得分:2)

不要为此使用jQuery。

Angular提供了一个加载部分的指令:ng-include

<div ng-include="'/path/to/partial.html'"></div>

(注意双引号&#34;&#39;传递静态字符串时)

您还可以使用动态路径:

$scope.pathToPartial = "/path/to/partial/" + partialName + ".html";

<div ng-include="pathToPartial"></div>