无法在 angularjs v1.6 中使用 ui 路由匹配路径

Unable to match path using ui routing in angularjs v1.6

如何让 angular 中的 ui 路由器解析到正确的状态?

我正在尝试 运行 我站点子目录中的 angular 应用程序,但无法获得 app.route.js 以正确路由请求。我将 "otherwise" 指令设置为 "dang",这样如果它未命中,对我来说很明显。

我正在尝试以 URL 的方式访问应用程序,例如: example.us/search

我正在 url 中的正确目录着陆,因为我被路由到 example.us/search/#!/dang

内容的文件位置(即 app/partials/search.html)是搜索文件夹的子文件夹,位于根文件夹内。

angular.module('example.usApp')
  .config(function($stateProvider, $urlRouterProvider,$locationProvider) {
    $urlRouterProvider.otherwise('dang');
    $stateProvider
         .state('home', {
            url: '/',
            templateUrl: 'app/partials/search.html',
            controller: 'searchController',
            resolve: {
                deps: ['$ocLazyLoad', function($ocLazyLoad) {
                    return $ocLazyLoad.load({
                        insertBefore: '#ng_load_plugins_before', 
                        files: [
                            'app/services/searchService.js',
                            'app/controllers/searchController.js',
                            'css/home.css'
                        ]
                    });
                }]
            }
        })...

编辑: 上面的 files[] 数组显然没有加载,因为 url 不匹配。我很难加载任何更改,因为浏览器认为我正在尝试 angular 路由,而不是在我指定的 URL 处重新加载页面。当我在 url 栏中键入更改并按回车键时, URL 被重写而不向服务器发出请求。

编辑2: 在回答一个问题时,是 oclazyload.js 被加载。从开发人员工具中,您可以看到以下所有内容均按此顺序加载:

search/
bootstrap.min.css
style.css
angular.min.js
angular-ui-router.min.js
angular-local-storage.min.js
ocLazyLoad.min.js
angular-cookies.min.js
jquery.easing.1.3.js
angular-payments.min.js
app.js
app.constants.js
LoginService.js
app.route.js
bootstrap.min.js
app.constants.js
LoginService.js
app.route.js
bootstrap.min.js

这个状态是抽象的,所以你永远不会碰到它。我假设您的主要单页是 Index.html 对吗?如果是这样改为:

angular.module('example.usApp')
  .config(function($stateProvider, $urlRouterProvider,$locationProvider) {
    $urlRouterProvider.otherwise('dang');
    $stateProvider
         .state('home', {
            url: '/search',
            templateUrl: 'app/partials/search.html',
            controller: 'searchController',
            resolve: {
                deps: ['$ocLazyLoad', function($ocLazyLoad) {
                    return $ocLazyLoad.load({
                        insertBefore: '#ng_load_plugins_before', 
                        files: [
                            'app/services/HomeService.js',
                            'app/controllers/HomeMainController.js',
                            'css/home.css'
                        ]
                    });
                }]
            }
        })...

url应该是example.us/#/search