控制器,带状态
app.controller('editCtrl', ['$http', '$location', '$rootScope', '$scope', '$state', '$stateParams', function($http, $location, $rootScope, $scope, $state, $stateParams){ // 上边声明添加显示的依赖注入,是为了防止,压缩(如UglifyJS)时改变function里的参数名,造成功能引用失败。推荐r.js压缩 // do something... }
获取路由的参数
$stateParams.id // #/camnpr/editCtrl?id=1
跳转路由状态
$state.go('camnpr.appManager'); // 跳转后的URL: #/camnpr/appManager $location.path('camnpr/appManager'); // 功能也是跳转的
ui-router扩展的跳转方式
<a ui-sref="camnpr.appManager">跳转</a> // 需要angular-ui-router
在ng-repeat里显示序号: $index // 这个是从0计数的。
get请求
$http({ method: 'get', url: 'http://camnpr.com/getAPI/', params:{id: 1}, headers: {'x-camnpr-uid': '1000'}//可以加入任意的头信息 });
post请求
$http({ method: 'post', url: 'http://camnpr.com/postAPI/', data:'id=1&referrer=camnpr.com', // 这里是字符串,格式请注意,同时我们可以使用 $.param({id:1, referrer: 'camnpr.com'})来获取等价的形式。 // Form Data获取方式 Request.Form['id'] 。 //这是加'Content-Type': 'application/x-www-form-urlencoded',的功劳。 // 若不加'Content-Type',则:Request Payload:id=1&referrer=camnpr.com // data: {id: 1, referrer: 'camnpr.com'}, // 是对象,那么 Form Data的数据是:{"id":1,"referrer":"camnpr.com"}: headers: {'Content-Type': 'application/x-www-form-urlencoded', 'x-camnpr-uid': '1000'} });
根据selector获取元素
angular.element('.is_select') // [<input type="checkbox" value="1" class="is_select">]
循环获取并操作
angular.forEach(document.getElementsByClassName('is_select'), function(item, index){ if(item.checked){ ids+=item.value+','; } });
ng-click里带当前的a,button等的事件
<button ng-click="camnpr.submitAdd($event)" class="btn btn-primary ladda-button" data-style="zoom-in"><span class="ladda-label">提交</span></button> // $event.target.currentTarget