您的位置:首页 > Web前端 > AngularJS

angular 常用指令和方法

2015-06-26 13:59 621 查看
方法

angular.copy()

angular.extend(dst,src)  //把src的所有属性复制到dst

var debug = true,
Logger = {
print: function(s) {
return debug ? s : ‘’
}
};

app.controller(‘ControllerOne’, [ ‘$scope’, function($scope) {
// mixin $scope
angular.extend($scope, Logger);
// define our $scope
angular.extend($scope, {
myVar: 1,
log: function() { this.print(this.myVar); }
});
}]);

app.controller(‘ControllerTwo’, [ ‘$scope’, function($scope) {
// mixin $scope
angular.extend($scope, Logger);
// define our $scope
angular.extend($scope, {
myVar: 2,
log: function() { this.print(this.myVar); }
});
}]);


app.controller(‘ThingController’, [ ‘$scope’, function($scope) {
// private
var _thingOne = ‘one’,
_thingTwo = ‘two’;

// models
angular.extend($scope, {
get thingOne() {
return _thingOne;
},
set thingOne(value) {
if (value !== ‘one’ && value !== ‘two’) {
throw new Error(‘Invalid value (‘+value+‘) for thingOne’);
},
get thingTwo() {
return _thingTwo;
},
set thingTwo(value) {
if (value !== ‘two’ && value !== ‘three’) {
throw new Error(‘Invalid value (‘+value+‘) for thingTwo’);
}
});

// methods
angular.extend($scope, {
// in HTML template, something like {{ things }}
get things() {
return _thingOne + ‘ ‘ + _thingTwo;
}
});
}]);


指令

ng-cinclude  //绑定模板

$sce.trustAsHtml

ng-bind-html  //绑定html

app.filter('to_trusted', ['$sce', function ($sce) {
  return function (text) {
  return $sce.trustAsHtml(text);
  };
}]);

<p ng-bind-html="currentWork.description | to_trusted"></p>


var ngBindHtmlDirective = ['$sce', function($sce) {
return function(scope, element, attr) {
scope.$watch($sce.parseAsHtml(attr.ngBindHtml), function(value) {
element.html(value || '');
});
};
}];

url:https://docs.angularjs.org/api/ng/service/$sce


服务

$injector

//IOC容器, $injector.get("serviceName"),$injector.get("$rootScope")

$animate.leave(element)

$httpProvider //可以改变$http 的默认行为

$route //会监视$location.url(),会是在map在route 中定义的url

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: