是否可以使用函数插入ng-include的模板路径?

时间:2013-07-12 01:21:37

标签: angularjs

我尝试使用函数将模板的路径加载到ng-include指令中。我希望我的函数的参数会因为它插入ng-include而呈现。但它不起作用。以下是我到目前为止的情况:

HTML:

<div ng-include="'{{content}}'"></div>
...
<div ng-click="showContent('views/my_content.html')">

角:

$scope.showContent = function(attrs){
    $scope.content = attrs;
};

当我点击具有ng-click的div时,我可以看到{{content}}已被模板路径替换,但模板本身未包含(即,它不会在页面上呈现)。有没有办法可以强制模板渲染?

2 个答案:

答案 0 :(得分:2)

而不是这个

<div ng-include="'{{content}}'"></div>

使用此

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

,模板将被渲染。

答案 1 :(得分:1)

ng-include不能像这样工作。

您需要做的是编写另一个将为您提取和显示内容的指令。您还可以使用$routeProvider更改网址,并让其包含模板网址。