gpt4 book ai didi

javascript - 注入(inject) $location 时 $routeProvider 不工作

转载 作者:太空宇宙 更新时间:2023-11-04 13:07:10 25 4
gpt4 key购买 nike

我目前正在开发一个 angularjs 网站,该网站具有 1 个模块,每个选项卡都有一个不同的 Controller 。我遇到的问题是以下代码块运行完美,用户被重定向到登录页面, Controller 启动。

angular.module('ScheidsPortal', ['ngRoute', 'ui.grid', 'ui.grid.edit'])
.config(['$routeProvider', '$locationProvider', function ($routeProvider, $locationProvider) {
$routeProvider
.when('/', {
templateUrl: 'app/login/login.html',
controller: 'loginController'
})
.otherwise('/');

$locationProvider.html5Mode(true);
}])
.run(function ($rootScope, Interface) {

});

但是当 $location 被注入(inject)到 run 函数中时:

.run(function ($rootScope, Interface, $location) {

路由功能停止工作,没有使用重定向, Controller 也没有加载。在 Controller 中使用 $location 实例不会产生任何问题。

缺少什么?

最佳答案

我找到了解决我自己问题的方法:在 index.html 中,我使用名为“menu”的组件作为我的应用程序的根。

<body>
<menu></menu>
</body>

<div ng-view></div>是菜单组件模板的一部分。由于这个组件有时不会被渲染,$routeProvider 并不总是被加载。把 <div ng-view></div>在 index.html 中创造了奇迹。

在 plunker 中,您可以看到它的工作原理:在控制台日志中,它显示“登录 Controller ”,表明正在加载 Controller 。 (不知何故html没有显示在页面中,但是在开发者控制台中,F12,你可以看到html代码)

关于javascript - 注入(inject) $location 时 $routeProvider 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39427239/

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