angularJS各个版本之间差别很大,尽管核心思想是一样的,都是基于数据双向绑定,模块化等思想,但有些部分甚至写法都完全不同,并且高版本的angular是不兼容IE的(即使是IE11),博主使用的版本为angularJS1.26,可以兼容至IE11。
在项目中使用angularJS1.x,首先需要引入几个js文件,jquery的包是必须的,此外下图为项目中我所引入的js:
首先,我们在base.js中定义我们的模块:
//定义模块
//[]中为自定义模块中需要引用的模块,不需要则为[]
var app = angular.module("agency",[]);
其次,在自定义controller中,引入我们的模块:
//$scope为必须的,其他服务有用上也必须导入
app.controller("agencyController", function ($scope, agencyOrderService, uploadService) {
//具体的逻辑内容
$scope.entity = {}
getData = function(){
agencyOrderService.getData($scope.entity).success(function(response){
//访问成功后的逻辑
})
}
}
自定义service.js中的内容:
app.service('agencyOrderService',function($http){
//访问的后端路径
this.getData = function (entity) {
return $http.post("getData",entity);
}
}
最后别忘了在html中声明angular控制的域
<body ng-app="agency" ng-controller="agencyController">
在html或ftl中引用js文件时,特别需要注意:
1.jquery的引入必须放在最前
2.其次是angular.min.js
3.其次是base.js
4.自定义service
5.自定义controller
很好理解,js中引用的对象都还不存在,肯定无法成功引用