zoukankan      html  css  js  c++  java
  • AngularJs基础学习指南(1)

    1.AngularJs指的是angular 1.x框架,Angular一般指的是24

    2.angularjs是什么:是一个js框架,帮助我们写页面的,是由谷歌公司创建,遵循MIT协议,开源开放

    3.angularjs主要应用于增删改查等数据操作比较频繁的,比如说购物车,后台管理系统。然而游戏,图形界面的编译器这种频繁的操作dom模型是不适用的。

    4.angularjs的特性:

    (1)MVC模式(数据模型,视图,控制器三部分)

    (2)模块系统

    (3)指令系统

    (4)依赖注入

    (5)数据双向绑定

    5.angularjs的缺点

    (1)dom操作支持较弱,当然也可以使用jq

    (2)html中过多指令,事件绑定的操作,耦合度较高

    6.为什么需要mvcjs模块化

    (1)代码规范越来越大,切分职责是大势所趋

    (2)为了复用代码,很多逻辑都是一样的,封装

    (3)为了方便后期的维护,修改一块功能不影响其他功能

    7.下面是一些angularjs的使用语法:

    (1)表达式:注意,使用angularjs时,需要先下载引入到项目目录中

    (2)html文件中,写angularjs的语句时,要在父标签的外部写一条指令,用来知名入口文件,ng-app

    (3){{1+2}} //3

    (4){{1+2}}--{{[1,2,3,4][2]}}--{{{name:’allen’}.name}}--{{2>1?’haha’:’heihei’}}

    (5)输出结果是:3--3--allen--haha

    (6)表达式定义变量:

    只要赋值了在上面就能使用,不是说一个变量在上面定义,只能在下面使用,而angularjs定义了变量之后,可以在变量前面使用,类似于变量提升,但又不完全是变量提升,因为这个输出的就是变量的值,并不是undefined

    (7)还有一个问题就是,我们在给一个变量赋值的时候,angularjs会把变量的值,执行一遍然后输出出来,而实际上我们不想输出,这时,就有了另外一条指令ng-init在这条指令里面写变量就可以在下面用,注意指令是ng-什么,这个指令是只能写在标签里面的

    (8)其实ng-app是为了定义主模块的入口,就相当于在这个主模块里面写js代码。

    8.定义主模块:

    var app = angular.module(‘myapp’,[])//第一个参数是模块名,第二个参数先写一个空数组

    app.controller(‘mycontroller’,function($scope){//第一个参数是控制器名,第二个参数是函数

    $scope.name = “二狗子”//注意函数的参数$scope是不可以修改的,叫依赖注入特性

    })

    <div ng-controller=”mycontroller”>

    {name}//这是一个封地,说明是mycontroller这个控制器控制的,是可以访问数据的

    </div>

    9.介绍一个指令:ng-bind:阻止花括号闪现,因为当运行时不会执行这一句,当读到引入angularjs的代码的时候,angular会执行这句话,并且把标签原有的内容隐藏掉,显示现在

    10.有一个依赖注入,是$scope,是作为一个函数的参数进行注入的,但是当项目上线的时候,需要压缩代码,会把原本长的参数,压缩成一个短的字母,所以就不能用了,所以angular想了一个方法,用数组接收一下。

    app.controller(“mycontroller”,[‘$http’,’$scope’,function(a,b){

    b.name = “二狗”

    }])

    11.除了$scope这种函数参数不叫服务,别的在函数的参数里面进行依赖注入的叫做服务,每一个服务都会提供一个功能,比如说:$rootscope作用:往根作用域挂数据,全局的,这是必须有控制器的,还有一种方法也可以实现全局,不用使用控制器

    12.app.run(function($rootscope){

    $rootscope.tel = ‘1111’

    })

    注意一种嵌套写法,子元素可以继承父元素的变量,但是父元素不可以机车继承子元素的变量,全局变量都可以使用。

  • 相关阅读:
    poj2481 线段树(单点更新)
    二叉查找树 hdu(3791 && 3999)
    计算机科学32个最重要的算法
    03最小路径覆盖问题
    02太空飞行计划问题
    hdu 2448最短路+最佳匹配
    poj1419 最大团
    hdu 3585(二分+最大团)
    hdu 3622 2-SAT
    hdu3592差分约束
  • 原文地址:https://www.cnblogs.com/zh-helloworld/p/zh_helloworld.html
Copyright © 2011-2022 走看看