如何动态设置`ng-include`路径?

时间:2015-08-03 05:52:38

标签: angularjs

我在页面中有8个块的内容。当用户点击每个时,我打开pop-up并在那里显示相同的内容。所以我分别有8个弹出内容。

当点击每个块时,我将该视图设为true。所以根据当前的观点,我想更改要更改的pop-up(包含)内容。但没有工作。

这是我的弹出窗口:html:

<div class='ng-modal' ng-if="modal.isOpen">
    <div class='ng-modal-overlay' ng-click='modal.hide()'></div>
        <div class='ng-modal-dialog' ng-style='dialogStyle'>
        <div class='ng-modal-dialog-content'>
         <ng-include ng-if="modal.board1" src="'../views/projectSummary/modals/{{currentView}}.html'"></ng-include>
         {{currentView}} //it works!
        </div>
    </div>
</div>

在我的控制器中我正在设置:

$scope.currentView = "board1";

所以,我的html允许加载:

'../views/projectSummary/modals/board1.html'

Click here to see my Error :

2 个答案:

答案 0 :(得分:2)

在控制器中设置部分的URL更好/更清洁,因此这不成问题,您可以这样做:

<ng-include src="currentViewURL">

但要回答你的问题:

<ng-include src="'../views/projectSummary/modals/' + currentView + '.html">

答案 1 :(得分:2)

从1.2开始,你只能将一个表达式绑定到* [src],* [ng-src]或action。您可以阅读更多相关信息here

在范围内编写一个函数以返回连接结果:

val