angular js和一些個人總結小技巧
阿新 • • 發佈:2018-11-30
獲取url中的網路字尾元素
封裝http服務 通過$q的服務 將成功的封裝到defer.resolve()中,將錯誤的封裝到defer.reject()中 這樣即可
function getParam(paramName) { paramValue = ""; isFound = false; if (this.location.search.indexOf("?") == 0 && this.location.search.indexOf("=") > 1) { arrSource = unescape(this.location.search).substring(1, this.location.search.length).split("&"); i = 0; while (i < arrSource.length && !isFound) { if (arrSource[i].indexOf("=") > 0) { if (arrSource[i].split("=")[0].toLowerCase() == paramName.toLowerCase()) { paramValue = arrSource[i].split("=")[1]; isFound = true; } } i++; } } return paramValue; }
等待DOM元素載入完畢
angular.element(document).ready(function () {
});
$scope.$on("$viewContentLoaded", function () {
})
自定義指令 使用當窗體變大變小的時候出現滾動條
隨後只需在html頁面中使用resize指令即可 並且加上resizeWithOffset的寬度即可 angular js自定義指令 這個寫的較好 http://www.cnblogs.com/Kavlez/p/4288885.htmlMainModel.directive('resize', function ($window) { return function (scope, element, attr) { var w = angular.element($window); scope.$watch(function () { return { 'h': w.height(), 'w': w.width() }; }, function (newValue, oldValue) { scope.windowHeight = newValue.h; scope.windowWidth = newValue.w; scope.resizeWithOffset = function (offsetH) { scope.$eval(attr.notifier); return { 'height': (newValue.h - offsetH) + 'px' //,'width': (newValue.w - 100) + 'px' }; }; }, true); w.bind('resize', function () { scope.$apply(); }); } })
封裝http服務 通過$q的服務 將成功的封裝到defer.resolve()中,將錯誤的封裝到defer.reject()中 這樣即可
MainModel.factory("httpService", function ($http, $q) { return { post: function (suburl, params) { var defer = $q.defer(); $http({ method: 'POST', params: params, url: jsapi.getDomain() + suburl, }).success(function (data) { if (data.retcode == 0) { defer.resolve(data.items); } else defer.reject(data.message); }).error(function (data) { defer.reject(data); }); return defer.promise; },