Я столкнулся с одной проблемой при динамическом задании значения тега a
с помощью Angular.ja ui-router
. Я предоставляю свой код ниже.
<a ui-sref="{{mastUrl}}" ng-show="isMaster">Master Info</a>
$scope.mastUrl='app.ownerinfo.owner.vew';
var url='../service/admin/login/checkmenu.php';
var method='GET';
var data='';
DataService.connectToServerSideScript(method,url,data)
.then(function(response) {
console.log('menu',response);
if (response.length > 0) {
angular.forEach(response,function(obj){
if (obj.user_type==2) {
$scope.isUser=false;
if (obj.isMast==0) {
$scope.isMaster=false;
}else{
$scope.isMaster=true;
if (obj.mastUrl !='') {
$scope.mastUrl=obj.mastUrl;
}
}
}
})
}
},function(error) {
})
Здесь у меня есть значение по умолчанию app.ownerinfo.owner.vew
для $scope.mastUrl
, но внутри службы мне нужно установить его динамически. Согласно моему текущему примеру это значение app.ownerinfo.owner.new
внутри ответа об успешном обслуживании. Но сгенерированный выходной HTML тега a
выглядит так, как показано ниже.
<a ui-sref="app.ownerinfo.owner.new" ng-show="isMaster"
href="#!/ownerinfo/owner/view">Master Info</a>
Мой код маршрутизации приведен ниже.
.state('app.ownerinfo',{
url:'/ownerinfo',
templateUrl:'view/ownerinfo.html',
controller:'ownerinfoController'
})
.state('app.ownerinfo.owner',{
url:'/owner',
templateUrl:'view/owner.html',
controller:'ownerController'
})
.state('app.ownerinfo.owner.vew',{
url:'/view',
templateUrl:'view/ownerview.html',
controller:'ownerviewController'
})
.state('app.ownerinfo.owner.new',{
url:'/new',
templateUrl:'view/newowner.html',
controller:'newownerController'
})
Здесь значение ui-serf
установлено так, как ожидается, но значение href
совпадает со значением по умолчанию. Мне нужно установить оба значения одинаково.