服务的本质是单例对象,封装一些方法和属性的。
单例模式:在实例化变量的时候,如果该变量已经存在,直接返回该变量;如果不存在,就创建一个新的变量再返回
ng自带的服务有很多,常用:
$location $window $http $scope $rootScope $interval $timeout..
服务的使用方式:
直接在创建ng对象时候,将服务注入进来,ng的注入器会实现服务的实例化,从而让我们可以直接调用。
效果: 不同环境,端口号可能不同,这个结果是webstorm里运行的结果
代码:
<!DOCTYPE html> <html ng-app="myApp"> <head lang="en"> <meta charset="UTF-8"> <script src="js/angular.js"></script> <title></title> </head> <body> <div ng-controller="myCtrl"> <p>{{nowPort}}</p> <button ng-click="handleClick()"> 得到端口号 </button> </div> <script> var app = angular.module('myApp', ['ng']); app.controller('myCtrl', function ($scope,$location) { $scope.nowPort = ""; $scope.handleClick = function () { //获取端口号 $scope.nowPort = $location.port(); console.log($scope.nowPort); } }) </script> </body> </html>