Angularjs 如何动态设置“ng include”路径?

Angularjs 如何动态设置“ng include”路径?,angularjs,Angularjs,我在页面中有一个包含8个块的内容。当用户单击每个按钮时,我打开一个弹出窗口,并在那里显示相同的内容。所以我有8个单独的弹出内容 当单击每个块时,我将该视图设置为true。因此,根据当前的视图,我想更改要更改的弹出窗口(include)内容。但不起作用 这是我的弹出窗口:html: <div class='ng-modal' ng-if="modal.isOpen"> <div class='ng-modal-overlay' ng-click='modal.hide()

我在页面中有一个包含8个块的内容。当用户单击每个按钮时,我打开一个
弹出窗口
,并在那里显示相同的内容。所以我有8个单独的弹出内容

当单击每个块时,我将该视图设置为
true
。因此,根据当前的视图,我想更改要更改的
弹出窗口
(include)内容。但不起作用

这是我的弹出窗口: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>
因此,我的html允许从以下位置加载:

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

最好在控制器中设置分部的URL,这样就不会出现问题,您只需执行以下操作:

<ng-include src="currentViewURL">

但要回答你的问题:

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

最好在控制器中设置分部的URL,这样就不会出现问题,您只需执行以下操作:

<ng-include src="currentViewURL">

但要回答你的问题:

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

自1.2以来,只能将一个表达式绑定到*[src]、*[ng src]或操作。你可以阅读更多关于它的内容

在作用域中编写函数以返回连接的结果:

$scope.getSrc = function (viewName) {
  return '../views/projectSummary/modals/' + viewName + '.html';
};

由于1.2,您只能将一个表达式绑定到*[src]、*[ng src]或操作。你可以阅读更多关于它的内容

在作用域中编写函数以返回连接的结果:

$scope.getSrc = function (viewName) {
  return '../views/projectSummary/modals/' + viewName + '.html';
};

正如你所说,它工作得很好。我没有得到任何错误。但我看不到里面有任何html。我在用你的第一个approach@3gwebtrain,我对你的评论有点困惑。。。只是想澄清一下——我提供的两种方法现在都可以在controller.js中使用,我设置:
$scope.currentPopupView='../views/projectSummary/modals/board1.html'
和在
中包含
现在
-但是html内容不在那里。@3gwebtrain,那么这是另一个问题(例如,错误的url-它应该与您的“index.html”相关)。下面是一个有效的例子:我得到的错误是:`无法读取未定义的''的属性'exp'。如果可能,请发布一些线索。正如您所说,它工作正常。我没有得到任何错误。但我看不到里面有任何html。我在用你的第一个approach@3gwebtrain,我对你的评论有点困惑。。。只是想澄清一下——我提供的两种方法现在都可以在controller.js中使用,我设置:
$scope.currentPopupView='../views/projectSummary/modals/board1.html'
和在
中包含
现在
-但是html内容不在那里。@3gwebtrain,那么这是另一个问题(例如,错误的url-它应该与您的“index.html”相关)。下面是一个有效的例子:我得到的错误是:`无法读取未定义的''的属性'exp'。如果可能,请发布一些线索。