首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在ng-view中加载页面

如何在ng-view中加载页面
EN

Stack Overflow用户
提问于 2013-12-03 07:45:33
回答 1查看 120关注 0票数 0

我有ng-repeat列表和ng-view:

代码语言:javascript
复制
<div ng-controller="TabCtrl">
    <ul>
        <li ng-repeat="tab in tabs">
            <a href="#/{{tab.page}}">{{tab.title}}</a>
        </li>
    </ul>
     <div ng-view></div>
</div>

routeProvider:

代码语言:javascript
复制
angular.module("sampleApp", ['ngRoute'], 
function($routeProvider) {
    $routeProvider

    .when('', {
        templateUrl: 'tabs/main.html',
        controller: MainCtrl
    })
    .when('/main', {
        templateUrl: 'tabs/main.html',
        controller: MainCtrl
    })

    .when('/main/model/:url', {
        templateUrl: 'tabs/modelPage.html',
        controller: modelCtrl
    })
});

main.html:

代码语言:javascript
复制
<div>
<h1>Main</h1>
<ul>
    <li ng-repeat="model in models">
        <a href="#/main/model/{{model.url}}">{{model.name}}</a>
    </li>
</ul>
<div ng-include="content"></div>

和控制器MainCtrl:

代码语言:javascript
复制
function MainCtrl($scope, $location, $http){
$scope.content = "main_main.html";
$http.post('get_data.php', {action: 'get_models'})
.success(function(data){
    $scope.models = angular.fromJson(data);
});

}

我想获得modelPage.html而不是main.html,但ng-view不适用于此。如何实现这段代码?

EN

回答 1

Stack Overflow用户

发布于 2013-12-27 03:19:47

我可能没有正确理解您的问题,但是您的JS中似乎缺少一个'modelCtrl‘控制器(或者它没有显示在您的问题详细信息中)。

Your $routeProvider

代码语言:javascript
复制
angular.module("sampleApp", ['ngRoute'], 
function($routeProvider) {
    $routeProvider

    ...

    .when('/main/model/:url', {
        templateUrl: 'tabs/modelPage.html',
        controller: modelCtrl
    })
});

添加'modelCtrl'

代码语言:javascript
复制
function modelCtrl($scope, $location, $http){
    ...
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20340141

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档