我实际上遇到了AngularJS中路线的问题。 事实上,当我第一次启动我的一个页面时,当前的网址是" http://www.test.com/#/roadmaps/edit"。
当我点击页面上的任何按钮时,我的页面会刷新并为我提供一个新的网址,例如:" http://www.test.com/?#/roadmaps/edit"用"?"在"#"。
之前因此,每当我在页面中填写不同的输入并单击按钮时,第一次刷新(有问题...)并制作"?"符号出现在URL中。
你有什么想法吗?
这是我的实际路由功能:
function config($routeProvider) {
$routeProvider.
when('/roadmaps/edit', {
templateUrl: 'partials/roadmap_edit.html',
controller: 'RoadMapEditCtrl'
}).
when('/roadmaps/edit/:id', {
templateUrl: 'partials/roadmap_edit.html',
controller: 'RoadMapEditCtrl'
})
}
第一行是添加路线图,第二行是修改。
你能帮助我吗?
感谢您提前
编辑:
这是导致此问题的按钮之一:
<li>
<button style="margin-top:10px;" ng-click="selectAll()">Tout {{selectionner}}
</button>
</li>
selectAll()函数:
var isSelectedJour = false;
$scope.selectAll = function () {
if (isSelectedJour) {
$scope.selectionner = "cocher";
} else {
$scope.selectionner = "décocher";
}
isSelectedJour = !isSelectedJour;
$scope.mo = isSelectedJour;
$scope.tu = isSelectedJour;
$scope.we = isSelectedJour;
$scope.th = isSelectedJour;
$scope.fr = isSelectedJour;
$scope.sa = isSelectedJour;
$scope.su = isSelectedJour;
};
答案 0 :(得分:1)
您可以使用
进行轮廓绘制function config($routeProvider,$locationProvider) {
$routeProvider.
when('/roadmaps/edit', {
templateUrl: 'partials/roadmap_edit.html',
controller: 'RoadMapEditCtrl'
}).
when('/roadmaps/edit/:id', {
templateUrl: 'partials/roadmap_edit.html',
controller: 'RoadMapEditCtrl'
});
$locationProvider.html5Mode(true);
}
答案 1 :(得分:0)
这里的聚会很晚,但这是原因和两个解决方案:ReactJS with React Router - strange routing behaviour on Chrome。原因是任何按钮单击被视为提交,而表单没有提交操作目标。一种解决方案是添加preventDefault事件处理程序。正如我在评论中提到的,我需要做的就是将<button>
更改为<span>
。