ng用param点击angularjs中的更改路线
ng-click change route in angularjs with param
我想改变用ionic框架构建angularjs应用程序的路线,但该路线没有改变
这是我的app.js代码
angular.module('starter', ['ionic', 'starter.controllers'])
.state('app.annuaire.menuitempage', {
url: "/menuitempage/:ID",
views: {
'menuContent' :{
templateUrl: "templates/menuItemPage.html",
controller: function($stateParams){
$stateParams.ID ;
}
}
}
})
.state('app.annuaire', {
url: "/annuaire",
views: {
'menuContent' :{
templateUrl: "templates/annuaire.html",
controller: 'MenuItemCtrl'
}
}
})
这是我的控制器的代码
angular.module('starter.controllers', [])
.controller('MenuItemCtrl', function($scope, $http, $location) {
$scope.itemsMenu = {};
var responsePromise = $http.get("http://monguidepratique.com/mobile/getCategories.php?parent_id=0");
responsePromise.success(function(data, status, headers, config) {
//alert(data);
$scope.itemsMenu = data;
});
responsePromise.error(function(data, status, headers, config) {
alert("AJAX failed!");
});
$scope.itemClick = function(path){
alert(1);
$location.path(path);
};
})
这是我在annuaire.html 中的html代码
<div class="col" ng-click="itemClick('/menuitempage/1628')"><img class="img_menu" src="img/home.png"><p class="titre_center">Accueil</p></div>
尝试
$location.path(path)
而不是
$state.go(path)
您需要将$location
服务注入控制器。
编辑
如果你正在使用$state.go
-你应该使用下一种方式:
$scope.itemClick = function(id){
$state.go('app.annuaire.menuitempage', {'ID': id})
};
和HTML:
<div class="col" ng-click="itemClick(1628)"><img class="img_menu" src="img/home.png"><p class="titre_center">Accueil</p></div>
第一个参数是状态名,而不是URL,第二个是带参数的Object。
我解决了的问题
在annuaire.html中,我更改了
itemClick('/menuitempage/1628')
通过
itemClick('/app/menuitempage/1628')
我通过更改了路线名称app.annuaire.menuitempage
app.menuitempage
.state('app.menuitempage', {
url: "/menuitempage/:ID",
views: {
'menuContent' :{
templateUrl: "templates/menuitempage.html",
controller: 'SubMenuCtrl'
}
}
})
相关文章:
- 如何在angularJS中编辑时,如果DB中的值为true,则设置复选框,如果值为false,则取消选中复选框
- AngularJS:我可以跳过函数参数回调吗
- AngularJS UI路由器不能像ng路由器那样工作
- 在AngularJS应用程序中使用封装指令和路由的推荐方式是什么
- 如何包含特定于每个视图angularjs的javascript文件
- AngularJS:ng之后,重复$scope值未按预期更新
- AngularJS-在JSON选择器中使用变量名
- $window.ga在AngularJS事件中未定义
- AngularJs 属性指令 2 路绑定
- AngularJs $watch 具有 2 路绑定
- 把AngularJS数组改成ng-repeat
- 在POST到API之前改变数组angularJS的值
- 我可以把angularjs的透光过滤器从输入框改为选择框吗?
- 如何将AngularJS服务改为使用Typescript ?
- 路由器+将变量从子组件改为父组件[Angularjs 2]
- AngularJS将css在比较后改为自排序字符串
- AngularJS $window.open('url', '_blank')指向当前路
- AngularJS指令:链路和控制器之间的通信方式
- AngularJS的值从radio改为$http.post
- 在angularjs中将数组json改为表格