angular采用的是1.6.5,
1.ng-model,ng-include,ng-click,ng-hide,ng-show,form表单的使用
<!doctype html> <html> <head> <script src="angular.js"></script> <title>第一个AngularJS程序</title> </head> <body> <div ng-app="mainApp" ng-controller="studentFun"> <br>------------------ng-model-------------------</br> <div><input type="text" ng-model="studentDTO.firstName"></div> <div><input type="text" ng-model="studentDTO.lastName"></div> <div><input type="text" ng-model="studentDTO.fees"></div> <div>{{studentDTO.fullName()|uppercase}}</div> <div>{{studentDTO.fees|currency}}</div> <div><input type="text" ng-model="subjectName"></div> <div> <ul> <li ng-repeat="subject in studentDTO.subjects | filter:subjectName|orderBy:'marks'">{{subject.name+",marks"+subject.marks}}</li> </ul> </div> <br>-------------------include 引用----------------------</br> <div ng-include="'main.html'"></div> <br>------------------ng-click,ng-hide,ng-show----------------</br> <div> <input type="checkbox" ng-model="enableDisableButton"/>button <button ng-disabled="enableDisableButton">click me</button> <div>{{clickCouter}}</div> <button ng-click="clickCouter=clickCouter+1">click me</button> <div><input type="checkbox" ng-model="showButton">button</div> <div><button ng-hide="showButton">click me</button></div> </div> <br>-----------------------form---------------------</br> <div> <form name="studentForm"> <input type="text" name="firstName" ng-model="firstName" required> <span style="color:red" ng-show="studentForm.firstName.$dirty && studentForm.firstName.$invalid"> <span ng-show="studentForm.firstName.$error.required">姓氏不能为空</span> </span> <input type="email" name="email" ng-model="email" length="100" required> <span style="color:red" ng-show="studentForm.email.$dirty && studentForm.email.$invalid"> <span ng-show="studentForm.email.$error.required">邮箱不能为空</span> <span ng-show="studentForm.email.$error.email">不符合邮箱规则</span> </span> </form> </div> </div> <script> var mainApp = angular.module("mainApp",[]); mainApp.controller("studentFun",function($scope){ $scope.studentDTO = { firstName:"李", lastName:"四", fees:"200", subjects:[ {name:"物理",marks:83}, {name:"化学",marks:81}, {name:"数学",marks:82} ], fullName:function() { var studentObject = $scope.studentDTO; return studentObject.firstName+studentObject.lastName; } }; }); </script> <script> angular.module("myapp", []) .controller("HelloController",function($scope) { $scope.helloTo = {}; $scope.helloTo.title = "AngularJS"; }); </script> </body> </html> <script> angular.module("app",[]).controller('helloController',function($scope) { $scope.product = {}; $scope.product.productName = '产品名称'; $scope.product.price = 10.01; }); </script> main.html <table border="0"> <tr><td>姓氏:</td><td><input type="text" ng-model="studentDTO.firstName"></td></tr> <tr><td>名字: </td><td><input type="text" ng-model="studentDTO.lastName"></td></tr> <tr><td>全名: </td><td>{{studentDTO.fullName()}}</td></tr> </table>
2.ajax的使用,这个是重点,前后端分离必须要用到的
注:1.6版本以前采用的是$http.get().success(),在1.6版本之后采用的是$http.get().then()
<html> <head> <title>Angular JS Controller</title> <script src="angular.js"></script> </head> <body> <h2>ajax请求</h2> <div ng-app="mainApp" ng-controller="studentController"> <table> <tr> <td>名称</td><td>号码</td><td>百分比</td> </tr> <tr ng-repeat="s in students"> <td>{{s.name}}</td><td>{{s.phone}}</td><td>{{s.percent}}</td> </tr> </table> </div> <script> var mainApp = angular.module("mainApp", []); mainApp.controller('studentController', function($scope,$http) { $http.get("./data.json",{ params: { name: '张三', age: 'abc' } }).then(function(response) { $scope.students = response.data; // $scope.student = JSON.parse(response) },function(response){ alert("error:"+error); }); }); </script> </body> </html> data.json [{ "name":"周杰伦", "phone":"12345", "percent":"0.2" },{ "name":"李晓春", "phone":"1234567", "percent":"0.3" },{ "name":"李连杰", "phone":"112211", "percent":"0.5" }]
3.ng-routeProvider,ng-template,ng-view的使用,用的场景可能就是tab页
注:1.6版本之前不需要$locationProvider.hashPrefix(''),这个作用是处理点击链接时会出现#!addStudent的现象
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <title>Angular JS 视图</title> <script src="angular.js"></script> <script src="angular-route.min.js"></script> </head> <body> <div ng-app="mainApp"> <a href="#addStudent">添加学生</a> <a href="#viewStudent">查询学生</a> <div ng-view></div> <script type="text/ng-template" id="addStudent.htm"> <h2>添加学生</h2> {{message}}<br> </script> <script type="text/ng-template" id="viewStudent.htm"> <h2>查询学生</h2> {{message}}<br> </script> </div> <script> var mainApp = angular.module("mainApp",['ngRoute']); mainApp.config(['$locationProvider','$routeProvider',function($locationProvider,$routeProvider){ $locationProvider.hashPrefix(''); $routeProvider.when('/addStudent',{ templateUrl:'addStudent.htm', controller:'addStudentController' }).when('/viewStudent',{ templateUrl:'viewStudent.htm', controller:'viewStudentController' }).otherwise({ redirectTo:'/addStudent' }); }]); mainApp.controller("addStudentController",function($scope){ $scope.message="这是一个提示信息,添加学生"; }); mainApp.controller("viewStudentController",function($scope){ $scope.message="这是一个提示信息,查询学生"; }); </script> </body> </html>
4.factory的使用,factory,service,controller这种写法有点像是后端的dao,service,controller层,代码最后注释掉的部分是采用(this.$get)AngularJS内部创建服务,工厂
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/> <title>Angular JS</title> <script src="angular.js"></script> </head> <body> <div ng-app="mainApp" ng-controller="calcuController"> <div><input type="text" ng-model="number"></div> <div><button ng-click="quire()">X</button></div> <div>{{result}}</div> </div> <script> var mainApp = angular.module("mainApp",[]); mainApp.value("defaultInput",5); mainApp.factory("MathService",function(){ var factory = {}; factory.multiply = function(a,b) { return a*b; } return factory; }); mainApp.service("cicleService",function(MathService){ this.square = function(a) { return MathService.multiply(a,a); } }); mainApp.controller("calcuController",function($scope,cicleService,defaultInput){ $scope.number=defaultInput; $scope.quire = function() { $scope.result = cicleService.square($scope.number); } }); //mainApp.config(function($provide) { // $provide.provider("MathService",function(){ // this.$get = function() { // var factory = {}; // factory.multiply = function(a,b) { // return a*b; // } // return factory; // } // }); //}); </script> </body> </html>
相关推荐
**Angular入门教材及示例代码** Angular是一款由Google维护的开源JavaScript框架,主要用于构建单页应用程序(SPA)。它提供了一套完整的解决方案,包括数据绑定、依赖注入、路由、模块化和许多其他特性,使得开发...
Angular入门基础1主要介绍了AngularJs的基本概念、优势以及版本之间的差异,并通过实例展示了如何创建一个Angular4应用。AngularJs是一个JavaScript框架,由谷歌公司于2009年发布,主要用于构建Web、Mobile和Desktop...
**Angular入门教程1** 在开始Angular的开发之旅之前,我们需要先搭建好开发环境。本文将指导您完成必要的准备工作,包括安装Node.js、TypeScript以及Angular CLI,并提供学习资源和项目实战指南。 ### 1. 搭建环境...
angular入门开始项目
angular4.x、angular5实战入门视频教程,angular4.x、angular5实战入门视频教程
Angular Webpack 带有的Angular入门套件入门依存关系(> = 6.9.1)设置git clone https://github.com/bellizio/angular-webpack.git cd angular-webpack yarn install概述这是一个基于官方的Angular Webpack入门工具...
使用打字稿,Angular-material和Webpack支持的Angular入门模板。 演示: : 产品特点 带有打字稿的AngularJs(v1.6.10)组件架构 与Angular Material集成(v1.1.9) 基于Webpack(v4.7.0)的捆绑系统 使用Angular ...
Visual Studio Angular4开发示例--数据显示
Angular初级
**Angular2 入门** Angular2 是一个流行的前端框架,由Google维护,用于构建高性能、可维护的单页应用程序(SPA)。它采用TypeScript作为主要开发语言,提供强大的数据绑定和组件化特性,使得开发复杂Web应用变得...
这个项目是Academind提供的Angular入门课程的一部分,特别关注的是TypeScript在数据绑定中的应用。 首先,让我们了解数据绑定的基本概念。数据绑定是Angular中连接应用业务逻辑(模型)与用户界面(视图)的桥梁。...
angular入门教程,《揭秘Angular 2》第一部分从前端的故事起点说起,然后对 Angular 以及 TypeScript 进行了简单的介绍,接着通过一个通讯录例子让读者快速入门 Angular 的开发;第二部分则深入讲解了 Angular 架构...
使用护照认证的Koa和Angular2入门版! 先决条件 (建议使用版本6及更高版本) (仅在生产模式下-用于会话); 安装 克隆存储库。 git clone https://github.com/thestdio/Koa-Angular-Starter.git 安装软件包...
**AngularJS 入门学习实例** AngularJS 是一个强大的前端JavaScript框架,由Google维护,用于构建动态Web应用。它通过MVC(Model-View-Controller)架构模式简化了开发过程,提供数据绑定、依赖注入、模块化等功能...
随着版本迭代,AngularJS 1.x与更新的Angular(2+)之间存在显著差异,因此书籍可能也会对比两者,帮助读者理解升级路径和新版本的优势。 总的来说,这两本书全面覆盖了AngularJS从入门到进阶的各个层面,无论是...
- **Angular入门**:指教程的初衷是为了让初学者快速掌握Angular的基本概念和使用方法。学习Angular涉及到理解其核心概念,如组件、路由、模块等。 ### 标签知识点 - **angular**:指出了教程的主体内容是围绕...
这个入门教程是基于 Angular 官方提供的案例整合而成,旨在帮助初学者快速掌握 Angular 2 的核心概念和基本用法。下面将详细阐述 Angular 2 的主要知识点。 1. **组件系统**:Angular 2 的核心是组件化,它将用户...
Angular入门级代码测试,主要用到的技术:Angular双向绑定,Angular对数组的常规操作