我有一个主模块,里面有一些路由。我还有一些模块,所有这些都包含在我的主模块中。从我的家庭模块功能之一,我正在尝试路由但出现错误。同一应用程序上的其他功能完美路由。已经半天过去了,仍然无法解决。 下面是代码和错误堆栈,请任何帮助会很棒
var app = angular.module("mainModule", ['ngRoute','homeModule']);
app.config(function($routeProvider) {
$routeProvider
.when("/", {
controller : "homeController",
templateUrl : "main.html"
})
.when("/ac-repair", {
templateUrl : "views/ac-service-repair.html",
controller : "formController"
})
});
//home module
var app = angular.module("homeModule", ['ngRoute']);
app.controller("homeController", function ($scope, $http, $location, $rootScope) {
$scope.$watch("selectedService", function (newValue, oldValue) {
// your code goes here...
if (newValue != oldValue) {
var name = $scope.selectedService.name;
if (name == "AC Service & Repair") {
//working fine here
$location.path('/ac-repair');
return;
}
}
});
////
//not working route in this function
$scope.serviceClicked=function(name)
{
if (name == 'AC Service & Repair') {
console.log("reached here!!");
$location.path('/ac-repair');
return;
}
}
});
// error
Uncaught Error: Syntax error, unrecognized expression: [name=]
at Function.ga.error (jquery.min.js:2)
at ga.tokenize (jquery.min.js:2)
at ga.select (jquery.min.js:2)
at Function.ga [as find] (jquery.min.js:2)
at r.fn.init.find (jquery.min.js:2)
at r.fn.init (jquery.min.js:2)
at r (jquery.min.js:2)
at HTMLAnchorElement.<anonymous> (<anonymous>:6:43)
at HTMLAnchorElement.dispatch (jquery.min.js:3)
at HTMLAnchorElement.q.handle (jquery.min.js:3)
//编辑:我观察得非常仔细;它在浏览器中更改路径一秒钟,然后返回。 到"/">
终于找到了解决方案。这是一个愚蠢的错误。 在调用函数时,我将href="#"也放在我的代码中。那里一片狼藉。无论如何,非常感谢您在这里查看。我希望这对任何其他新的初学者有所帮助