欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

angular1.x ui-route传参的三种写法小结

程序员文章站 2022-06-03 15:22:03
如下所示: .state('classrooms',{ url: '/classrooms/:id' }) .state('classrooms',{...

如下所示:

.state('classrooms',{
 url: '/classrooms/:id'
})
.state('classrooms',{
 url: '/classrooms/{id}'
})
.state('activities',{
 url: '/activities',
 params: {
 id: { value: 42}
 }
})

localhost:3000/#/classrooms/3

function classroomcontroller($stateparams){
 var classroomid = $stateparams.id;
}

一: 如何传递单个参数

首先,要在目标页面定义接受的参数:

angular1.x ui-route传参的三种写法小结

传参,

ui-sref:

angular1.x ui-route传参的三种写法小结

$state.go:

angular1.x ui-route传参的三种写法小结

接收参数,

在目标页面的controller里注入$stateparams,然后 "$stateparams.参数名" 获取

angular1.x ui-route传参的三种写法小结

二:传递多个参数其实也很简单可以在上面的单个后面直接拼

1:目标页面定义需要传的传输个数

angular1.x ui-route传参的三种写法小结

2:controll里面接受(注入$stateparams,然后 "$stateparams.参数名)

angular1.x ui-route传参的三种写法小结

我这里是用页面绑定的值作为参数传过去,大家可以传固定的,具体业务具体对待

三:传递对象

$stateprovider
 .state('app.example1', {
  url: '/example',
  views: {
   'menucontent': {
   templateurl: 'templates/example.html',
   controller: 'examplectrl'
   }
  }
  })
  .state('app.example2', {
  url: '/example2/:object',
  views: {
   'menucontent': {
   templateurl: 'templates/example2.html',
   controller: 'example2ctrl'
   }
  }
  })

2)

.controller('examplectrl', function ($state, $scope, userservice) {
 
 
 $scope.goexample2 = function (obj) {
 
  $state.go("app.example2", {object: json.stringify(obj)});
 }
 
 })
 .controller('example2ctrl', function ($state, $scope, $stateparams) {
 
 console.log(json.parse($state.params.object));
 
 
 })

以上这篇angular1.x ui-route传参的三种写法小结就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。