1、 ui-sref、$state.go 的区别

ui-sref 一般使用在 <a>...</a>;

$state.go('someState')一般使用在 controller里面;

这两个本质上是一样的东西,我们看ui-sref的源码:ui-sref最后调用的还是$state.go()方法

2、传递参数

2.1 ui-sref

.state('home.questionTodo',{
   url:'/questionTodo',
   views:{
     'right-content@home':{
       templateUrl:'home/questionTodo/questionTodo.view.html',
       controller:'questionTodoCtrl'
     }
   },
 })

.state('home.questionTodo.questionDetail',{
url:'/questionTodo/questionDetail/:questionId',
views:{
'right-content@home':{
  templateUrl:'home/questionTodo/questionDetail/questionDetail.view.html',
  controller:'questionDetailCtrl'
}
},
})

这个是home页下有一个questionTodo页面,该页面有很多question,点击详情,跳转到该问题的详情页,显示该问题,需要在url上传递questionId.

<a ui-sref="home.questionTodo.questionDetail({questionId:question.questionId})">详情</a>

2.2 $state.go

<a ng-click="goDetail(question.questionId)">详情</a>

在questionTodoCtrl中

$scope.goDetail=function(questionId){
$state.go('home.questionTodo.questionDetail',{questionId:questionId});
}

3、 接收参数

在questionDetailCtrl中

.controller('questionDetailCtrl',['$stateParams',function($stateParams){
console.log($stateParams.questionId);
}])

4、传递参数为对象

上面传递的参数是普通的值,会表现在url中,questionTodo/questionDetail/12(12即questionId)

使用params传递参数时,可以传递任意类型值得参数,并且不会表现在url中,但是刷新该页面时,参数会丢失

.state('home.questionTodo.questionDetail',{
url:'/questionTodo/questionDetail',
params:{question:null}, // 定义一个空对象,接收数据,同样也可以传递普通参数,但都不会在url上显示
views:{
'right-content@home':{
  templateUrl:'home/questionTodo/questionDetail/questionDetail.view.html',
  controller:'questionDetailCtrl'
}
},
})
<a ui-sref="home.questionTodo.questionDetail({question:question})">详情</a>
<a ng-click="goDetail(question)">详情</a>
$scope.goDetail=function(question){
$state.go('home.questionTodo.questionDetail',{question:question});
}

angular ui 路由传参的更多相关文章

  1. angular路由传参和获取路由参数的方法

    1.首先是需要导入的模块 import { Router } from "@angular/router";//路由传参用到 import{ActivatedRoute,Param ...

  2. 8.MVC框架开发(URL路由配置和URL路由传参空值处理)

    1.ASP.NET和MVC的路由请求处理 1)ASP.NET的处理 请求---------响应请求(HttpModule)--------处理请求(HttpHandler)--------把请求的资源 ...

  3. vue链接传参与路由传参

    1.链接传参: 例如:链接是:http://localhost:3333/#/index?id=001 我们要获取参数:console.log(this.$route.query.id):即可 2.路 ...

  4. vue路由传参的三种方式区别(params,query)

    最近在做一个项目涉及到列表到详情页的参数的传递,网上搜索一下路由传参,结合自己的写法找到一种适合自己的,不过也对三种写法都有了了解,在此记录一下 <ul class="table_in ...

  5. react router @4 和 vue路由 详解(六)vue怎么通过路由传参?

    完整版:https://www.cnblogs.com/yangyangxxb/p/10066650.html 8.vue怎么通过路由传参? a.通配符传参数 //在定义路由的时候 { path: ' ...

  6. react router @4 和 vue路由 详解(五)react怎么通过路由传参

    完整版:https://www.cnblogs.com/yangyangxxb/p/10066650.html 7.react怎么通过路由传参? a.通配符传参(刷新页面数据不丢失) //在定义路由的 ...

  7. vue动态路由配置,vue路由传参

    动态路由: 当我们很多个页面或者组件都要被很多次重复利用的时候,我们的路由都指向同一个组件,这时候从不同组件进入一个"共用"的组件,并且还要传参数,渲染不同的数据 这就要用到动态路 ...

  8. vue 路由传参

      mode:路由的形式 用的哪种路由 1.hash 路由 会带#号的哈希值 默认是hash路由   2.history路由 不会带#的     单页面开发首屏加载慢怎么解决?单页面开发首屏加载白屏怎 ...

  9. vue父子组件路由传参的方式

    一.get方式(url传参): 1.动态路由传参: 父组件: selectItem (item) { this.$router.push({ path: `/recommend/${item.id}` ...

随机推荐

  1. CPU 和内存 $ free -m$ uptime$ top$ htop

    注意以下问题: 还有空余的内存吗? 服务器是否正在内存和硬盘之间进行swap? 还有剩余的CPU吗? 服务器是几核的? 是否有某些CPU核负载过多了? 服务器最大的负载来自什么地方? 平均负载是多少?

  2. webpack学习之—— Loaders

    loader 用于对模块的源代码进行转换.loader 可以使你在 import 或"加载"模块时预处理文件.因此,loader 类似于其他构建工具中“任务(task)”,并提供了 ...

  3. Hdu 4251 区间中位数(划分树)

    题目链接 The Famous ICPC Team Again Time Limit: 30000/15000 MS (Java/Others)    Memory Limit: 32768/3276 ...

  4. CodePlus2017 12月月赛 div2火锅盛宴

    当时看到这道题感觉真是难过,我数据结构太弱啦. 我们来看看需要求什么: 1.当前熟了的食物的最小id 2.当前熟了的食物中有没有编号为id的食物 3.当前没熟的食物中有没有编号为id的食物 4.当前没 ...

  5. Web.xml详解(转)(Filter,context,listener)

    web.xml 详细解释!!(链接) web.xml加载过程(步骤) 首先简单说一下,web.xml的加载过程. 当我们去启动一个WEB项目时,容器包括(JBoss.Tomcat等)首先会读取项目we ...

  6. es安装遇到的问题

    问题1: es一闪即逝的问题?java的jdk环境变量没有配置好, JAVA_HOME没有配置好 必须在系统变量里面添加JAVA_HOME: C:\Program Files\Java\jre1.8. ...

  7. hadoop生态系统默认port集合

    版权声明:本文为博主John Lau原创文章.未经博主同意不得转载 https://blog.csdn.net/GreatElite/article/details/24651569      1 H ...

  8. bzoj1579 道路升级

    Description 每天,农夫John需要经过一些道路去检查牛棚N里面的牛. 农场上有M(1<=M<=50,000)条双向泥土道路,编号为1..M. 道路i连接牛棚P1_i和P2_i ...

  9. NLP+2vec︱认识多种多样的2vec向量化模型

    1.word2vec 耳熟能详的NLP向量化模型. Paper: https://papers.nips.cc/paper/5021-distributed-representations-of-wo ...

  10. mysql操作手册

    开启日志:https://segmentfault.com/a/1190000003072237 常用词:  Mysql:一种免费的跨平台的数据库系统  E:\mysql:表示是在dos 命令窗口下面 ...