AngularJS常用知识汇总(不断更新中....)
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
开发工作中常用到的,未完待续...