angularjs怎么实现跳转的,是要写路由吗

 我来答
鈾氶瓏鈾
2016-12-13 · 知道合伙人软件行家
鈾氶瓏鈾
知道合伙人软件行家
采纳数:718 获赞数:1337

向TA提问 私信TA
展开全部

方法1:使用 angular 自带的 ngRoute 
依赖: angular-route.js (bower install angular-route)
网址: http://docs.angularjs.cn/api/ngRoute/service/$route#example
用法:
a.需要 ui 中用 ng-view 指令指定 如: <div ng-view></div> 这就相当于页面的刷新区域
b.配置注册

// 注入 ngRoute
var angularApp = angular.module("Your App Name", ['ngRoute'])
angularApp.config(function ($routeProvider) {
    $routeProvider.
    when('/list', {
        // 配置列表路由及 Controller
        templateUrl: 'partial/list.html', //TODO 列表页面
        controller: 'listController' //TODO 列表控制器
    }).
    when('/detail', {
        // 配置详情路由及 Controller
        templateUrl: 'partial/detail.html', //TODO 详情页面
        controller: 'detailController' //TODO 详情控制器
    }).
    otherwise({
        //默认路由
        redirectTo: '/list'
    });
});

方法2:使用第三方 ui-router 
依赖:angular-ui-router.js (bower install angular-ui-router)
网址:https://github.com/angular-ui/ui-router
用法:
a.需要 ui 中用 ui-view 指令指定 如: <div ui-view></div> 这就相当于页面的刷新区域
b.配置注册

// 注入 ui.router
var angularApp = angular.module("Your App Name", ['ui.router'])
angularApp.config(function ($stateProvider) {
    $stateProvider.
    state('list',{
        url:'/list',
        templateUrl: 'list.html',
        controller: 'listController'
    }).
    state('detail',{
        url:'/detail',
        templateUrl: 'detail.html',
        controller: 'detailController'
    })
});

详细的用法及不同可以自己参考一些文章,各有优缺点

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式