模板之间的路由不适用于 Angular UI

Routing between templates not working for Angular UI

本文关键字:适用于 Angular UI 不适用 路由 之间      更新时间:2023-09-26

这是我的路由器.js

angular.module('app.routes', []).config(function($stateProvider, $urlRouterProvider) {

$stateProvider.state('tabsController.dashboard', {
    url : '/page2',
    views : {
        'tab1' : {
            templateUrl : 'templates/dashboard.html',
            controller : 'dashboardCtrl'
        }
    }
}).state('tabsController.searchResults', {
    url : '/page1/page3',
    views : {
        'tab1' : {
            templateUrl : 'templates/searchResults.html',
            controller : 'searchResultsCtrl'
        }
    }
}).state('tabsController', {
    url : '/page1',
    abstract : true,
    templateUrl : 'templates/tabsController.html'
});
// if none of the above states are matched, use this as the fallback
$urlRouterProvider.otherwise('/page1/page2');

});

这是我的路由模板仪表板.html

<ion-content class="has-header" padding="true">
    <form class="list" name="myform">
        <label class="item item-input" name="Language"> <i class="icon ion-search placeholder-icon"></i>
            <input type="text" placeholder="Language" name="lang" ng-model="dashboardCtrl.localMovies.lang" ng-minlength=1 ng-disabled="myform.movie.$valid" required>
        </label>
        <span> OR </span>
        <label class="item item-input" name="Movie"> <i class="icon ion-search placeholder-icon"></i>
            <input type="text" placeholder="Name of Movie" name="movie" ng-model="dashboardCtrl.localMovies.movie" ng-minlength=1 ng-disabled="myform.lang.$valid" required>
        </label>
    </form>
    <a class="button button-positive button-block " href="#/page1/page3/">Search</a>
</ion-content>

单击搜索按钮时,搜索结果.html模板未加载。请帮我找出问题

试试这个:

.state('tabsController.searchResults', {
    url : '/page3',
    views : {
        'tab1' : {
            templateUrl : 'templates/searchResults.html',
            controller : 'searchResultsCtrl'
        }
    }
})

子状态将从父状态继承 url 并添加/page3 tabsController.searchResults以便状态的 url 变为/page1/page3

我认为你犯了一个网址错误。在这里

state('tabsController.searchResults', {
    url : '/page1/page3',
    views : {
        'tab1' : {
            templateUrl : 'templates/searchResults.html',
            controller : 'searchResultsCtrl'
        }
    }
})

网址应该是这样的:

url : '/page3'