发表于: 2017-07-15 23:03:28

1 777


今天完成的事情:


url传参:

url:"/home?type&status&startAt&endAt",

params只是发起请求,具体到将参数传给后台要使用url传参,固定写法“?”后面是参数,多个参数传递要使用&连接


通过ng-model进行双向绑定之后,可以将表单页面中输入的值传递给后台,但是时间在输入的时候是一个object,后台的时间是一个时间戳,数据类型是number,要将双向绑定后时间一栏的内容转化为时间戳传递给后台


$scope.parmas.startAt = Date.parse($scope.startAt);

Date.parse()就是将时间转化为时间戳的函数,通过等式赋值给param参数


第一次发起请求的时候时间框内没有值,所以无法进行赋值运算,会报错

if (isNaN($scope.parmas.startAt)) {

   $scope.parmas.startAt = ""

}

通过这一方法进行初始化

没有输入日期的时候,空值是一个NaN,所以通过isNaN()函数运算,返回的值是true,执行if函数内的内容,就是初始化,在这里只要$scope.parmas.startAt是一个空值即可,不能是空对象,因为空对象包含object


ui-sref="home({type:parmas.type,status:parmas.status,startAt:startAt,endAt:endAt})

ui-sref内部包含要跳转的页面和全部的键值对形式的参数,键是和后台约定的,值是通过双向绑定得到的值


如果想要清空搜索框,直接将值变为空

ui-sref="home({type: '',status: '',startAt: '',endAt: ''})"


参数转换

通过ui-sref跳转了页面并传递了参数,在目标页面用$stateParams接收,所以$stateParams包含了所有ui-sref中传递的参数以及参数里包含的值


function($stateParams!=undefined) {

 $scope.parmas=$stateParams;

   $scope.startAt=new Date( $scope.parmas.startAt);

   $scope.endAt=new Date( $scope.parmas.endAt);

   //将时间戳转换成时间

   $scope.aaa();

} else {

   $scope.aaa()

}


明天计划的事情:

完成分页


问题:

之前不知道如何把日期插件汉化,通过小课堂了解,直接在js文件中修改文字就行


收获:

如上



返回列表 返回列表
评论

    分享到