1.什么是Angular JS?

AngularJS 是一个为动态WEB应用设计的 JavaScript结构框架.

2.Angular JS的用处?

--它是为了克服HTML在构建应用上的不足而设计;

--适用于CRUD应用,是为了消除页面上的DOM操作而生.它的核心理念是借鉴了MVC框架,但是它其实更接近于MVVM.viemmodel是一个原生的javascript对象,angularJS把view和model加到viemmodel上,从而实现数据的绑定.而且这种绑定是双向的,即view变化,对应的model也会变化,同样model发生变化也会引起相应的view的变化.

--主要用来开发单页面应用,它支持浏览器历史操作,向前向后按钮,单页应用中的收藏操作。

--并不是所有的应用都适合用AngularJS来做,如游戏开发之类对DOM进行大量操纵、又或者单纯需要 极高运行速度的应用。

3.Angular JS的特性

--双向数据绑定: 这是AngularJS模块的核心功能——**绑定**,ng-model和{{}}实现的是双向绑定,如果controller和ng-model都存在于一个输入框或元素上的话,页面加载完后,对应元素里会显示controller里设置的默认值,一旦在view人工修改,ng-model就会发生作用.controller控制器,可以实现单向绑定.

--模块化:在AngularJS中,一个模板就是一个HTML文件。AuguarJS并不把模板当做String来操作。输入AngularJS的是DOM而非string。数据绑定是DOM变化,不是字符串的连接或者innerHTML变化。使用DOM作为输入,而不是字符串,是AngularJS区别于其它的框架的最大原因。

--服务和依赖注入:AngularJS拥有内建的依赖注入(DI)子系统,DI允许你请求你的依赖,而不是自己找寻它们,即"被动接受",也就是说如果你需要一个对象或者变量,只要angularJS中自有的,只要声明它,就可以使用.

--指令:Angular JS有很多自有的ng-directives,可以帮助我们操作DOM,另外,我们还可以自定义指令,用angular模块的directive方法.

4.几个重要的物件

-- ng-app:一般家在最外层的根元素上,定义了angularJS脚本的作用域;
-- ng-model:把view上的标签或属性绑定到viemmodel中;
-- {{}}:angularJS的表达式,作用就是把viewmodel中的model显示到view中.
--$scope:这个是angularJS的核心对象,即viewmodel对象,这个对象不能更改,依赖注入方式获得.

5.编写angularJS的基本流程:

页面
-- 首先用<script>标签,导入angular.min.js文件;
-- 一般在根元素<html>里定义angularJS脚本的作用域`<html ng-app="myAPp">`;
-- 定义控制器的作用域,在标签里`ng-controller="myController"`;
-- 数据要绑定到viemmodel的话,在对应的标签上用ng-model指令;或者要显示用{{}}.

js
-- 加载需要的模块`var myApp = angular.module("myApp",[])`;第二个参数,是该模块所依赖的模块,没有的话,可不填写
-- myApp.controller("MyController",function($scope){...};控制器方法调用,回调函数的一个参数务必是$scope,这样才能获取到$scope,从而操纵数据.

Angular JS知识小总结的更多相关文章

  1. 【Todo】React & Nodejs学习 &事件驱动,非阻塞IO & JS知识栈:Node为主,JQuery为辅,Bootstrap & React为辅辅,其他如Angular了解用途即可

    JS知识栈:Node为主,JQuery为辅,Bootstrap & React为辅辅,其他如Angular了解用途即可 今天在学习ReactJS和NodeJS,看到关于ReactJS的这篇文章 ...

  2. Asp.Net Mvc+Angular.Js自测小Demo

    参考:http://www.cnblogs.com/eedc/p/6082052.html 一.引用anguler: 1.angular.js 2.angular-route.js 3.app.js ...

  3. angular js jquery中post请求的一点小区别

    这也是最近遇到的坑,还是之前那个项目,现在要实现登录功能. 背景:注册功能之前已经跑通了.前端用的是jquery后台是springMVC.鉴于注册和登录有些接口功能是类似的(比如注册确保邮箱是没有注册 ...

  4. Angular.js路由 简单小案例

    代码案例: <html> <head> <meta charset="utf-8"> <title>AngularJS 路由实例&l ...

  5. Angular.js 的初步认识

    MVC模式 模型(model)-视图(view)-控制器(controller) Angular.js采用了MVC设计模式的开源js框架 1.如何在angular.js建立自己的模块(model),控 ...

  6. Angular JS中$timeout的用法及其与window.setTimeout的区别

    $timeout的用法 angular.js的$timeout指令对window.setTimeout做了一个封装,它的返回值是一个promise对象.当定义的时间到了以后,这个promise对象就会 ...

  7. angular.js 例子

    angular.js是一个前端的MVC框架,12年的时候曾近在一个portal平台的项目中使用过. 下面给出一个angular.js的典型例子,涵盖一些基础的知识点,用以复习备忘: <html ...

  8. angular.js初探

    2015年7月27日 22:26:35 星期一 用在我论坛里的小栗子: 先列出来一级回帖, 点击帖子前边的"查看回复"按钮无刷新的去请求该帖子的所有回复 首先要引用js文件, 我这 ...

  9. 精通 Angular JS 第一天——Angular 之禅

    简介 Angular JS是采用JavaScript语言编写的客户端MVC框架,它为业界带了重大的变化,包括对模板化的创新实现,以及数据的双向绑定,这些特性使得它强大而易用.它可以用来帮助开发者编写单 ...

随机推荐

  1. java.lang.ClassCastException: com.ch.hibernate.Student_$$_javassist_0 cannot be cast to javassist.util.proxy.Proxy

    利用query动态查询时,报错 java.lang.ClassCastException: com.ch.hibernate.Student_$$_javassist_0 cannot be cast ...

  2. UVA1602 Lattice Animals 网格动物 (暴力,STL)

    多联骨牌的生成办法,维基上只找到固定的骨牌fix,而free的没有找到. 于是只好写个set判重的简单枚举了. 旋转的操作,可以在坐标轴上画个点,以原点为轴心,逆时针旋转90度,新的点的坐标为(-y, ...

  3. 单核CPU并发与非并发测试

    多线程运行程序的目的一般是提高程序运行效率并且能够提高硬件的利用率比如多核CPU,但是如果我们只有单核CPU并发运行程序会怎样呢? 我以两个环境作为对比: 环境A(我本机8c) 环境B(我的云服务器1 ...

  4. ubuntu18.04 安装五笔拼音

    sudo apt install fcitx-table-wubi fcitx-table-wbpy 在输入法中加入五笔拼音就可以了,如果原来使用的是ibus, 改为fcitx后,重启机器.

  5. Cordova 本地项目创建方法

    l  创建项目 需要在终端上输入:cordova create [目录][项目ID][APP名称] 运行:cordova create hello com.example.hello hello 将在 ...

  6. Bootstrap历练实例:动画的进度条

    <!DOCTYPE html><html><head><meta http-equiv="Content-Type" content=&q ...

  7. 解决vs 编译的bug“请检查是否是磁盘空间不足、路径无效或权限不够”

    昨晚用vs编译遇到一个问题,编译一半发现硬盘没空间,一直重启vs,重启电脑, 删除pdb文件都没用,之后尝试重新生成解决方案,就解决了.这个是vs的一个bug

  8. (72)zabbix监控日志文件 MySQL日志为例

    一般情况下,日志最先反映出应用当前的问题,在海量日志里面找到我们异常记录,然后记录下来,并且根据情况报警,大家可以监控系统日志.nginx.Apache.业务日志. 这边我拿常见的MySQL日志做监控 ...

  9. linux优化之优化开机自启动服务

    过滤出来需要的开机自启动项:chkconfig  --list|grep  3:on|grep  -v  "crond|sshd|network|rsyslog|sysstat" ...

  10. Yii2.0 的安装学习

    视频学习地址: 后盾网视频: http://www.houdunren.com/houdunren18_lesson_76?vid=7350 与<Yii框架>不得不说的故事—基础篇 htt ...