gpt4 book ai didi

javascript - AngularJS $locationProvider.search() 导致未捕获对象错误

转载 作者:行者123 更新时间:2023-11-28 19:47:57 24 4
gpt4 key购买 nike

在 AngularJS 中,尝试使用 $locationProvider 解析查询字符串时出现错误。 AngularJS 文档说 locationProvider 尚未从核心中移出,所以我想知道为什么下面的代码不起作用。它设置 html5Mode 很好,但就像搜索方法不存在一样。

var myApp = angular
.module('agencyMatrix', ['ngRoute']);

myApp.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider){
$locationProvider.html5Mode(false);
var location = $locationProvider.search();
}

最佳答案

search() 实际上是在 $location 上定义的,而不是在 $locationProvider 上定义的。

请参阅$location文档和来源:angular.js/src/ng/location.js

要使用$location.search,您可以在运行中而不是配置中访问它:

var myApp = angular
.module('agencyMatrix', ['ngRoute']);

myApp.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider){
$locationProvider.html5Mode(false);
}]).run(['$location', function($location) {
var location = $location.search();
}])

providers Angular 文档(特别是 Provider Recipe 部分)中的指南描述了配置阶段以及它与其他阶段的不同之处(例如,$location 本身在配置阶段不可用)。

关于javascript - AngularJS $locationProvider.search() 导致未捕获对象错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23958757/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com