呼叫控制器範圍的功能是在HTML頁面如何從指令
<navigation menu="MenuList"></navigation>
指令聲明在上述聲明中的菜單列表包含從服務器datasoruce。下面
是我在上面的模板。我已MenuClick事件定位標記菜單
<ul id="accordion" class="sm sm-vertical sm-blue sid_button">
<li style="padding: 4px 3px 6px 4px;" ng-repeat="item in menu">
<a class="has-submenu" href="#" id="">
<span class="field_work_icon"></span>
<div class="li_title pr_title" style="line-height: 37px;">{{item.varDisplayName}}</div>
<div class="clearfix"></div>
</a>
<ul class="left4 ulwidth211">
<li ng-repeat="item1 in item.submenu">
<a href="#" ng-click="MenuClick('{{item1.varDashboardID}}','{{item1.varDisplayName}}')\">{{item1.varDisplayName}}</a>
</li>
</ul>
</li>
</ul>
模板。這是在我的控制器definde。但當我點擊菜單上它不叫
我在我的角應用程序follwing指令。
此指令創建動態菜單。
app.directive("navigation", ['$compile', '$rootScope', function ($compile, $rootScope) {
return {
restrict: 'E',
replace: true,
scope: {
menu: '='
},
templateUrl: "template.html",
compile: function (el) {
var contents = el.contents().remove();
return function (scope, el) {
$compile(contents)(scope, function (clone) {
el.append(clone);
});
};
}
};
}])
在這個指令的幫助下我的菜單是按照它應該創建的。
但有一兩件事沒有工作是單擊功能
下面是不是叫
app.controller('HomeController', ['$scope', 'Applicationservice', 'WebApiBaseUri', 'ngDialog', '$rootScope', '$sce', '$timeout', 'AppURL', 'AuthenticationService', function ($scope, Applicationservice, WebApiBaseUri, ngDialog, $rootScope, $sce, $timeout, AppURL, AuthenticationService) {
$scope.MenuClick = function (dashBoardID, baseUrl) {
if (dashBoardID != "") {
window.location.href = Applicationservice.BaseURL() + "/Menu/Report/";
sessionStorage.setItem("DashboardID", dashBoardID);
} else {
window.location.href = Applicationservice.BaseURL() + "/Menu/" + baseUrl + "/";
}
}]);
工作你檢查控制檯? – Jigar7521
@JigarPrajapati是的,我檢查了我的控制檯。沒有錯誤。 – navnit
有一個錯字:你不需要在附近做大括號: {{item1.varDisplayName}} 只需在你的變量中移除大括號。 – Jigar7521