Angular框架-1

作者: Anna_Hu | 来源:发表于2017-09-26 22:43 被阅读0次

1,Angular是一个非常优秀的前端js框架,它是由谷歌团队负责研发和维护的,通常用来构建单页面应用。angular自身有很多颠覆性的特性,改变了前端的编码格式,大大简化了我们的工作。

2,Angular的核心思想:通过指令扩展 html ,通过表达式绑定数据到 html . angularjs不推崇dom操作,也就是说在ng中几乎找不到任何dom操作,一切操作以数据为中心,用数据操作dom.

3, html和angularjs模块的关系是:管理与被管理的关系,我们创建了angularjs模块,通过模块对象创建控制器,进而通过控制器去管理相应的区域。请参考下图:

4,双向数据绑定:我们通过anjularjs去监听html页面中文本框的值变化,将最新的值给到js中对应的变量,当这个变量发生变化时,angularjs又回去html页面中查找谁在使用这个变量,找到后将变量更新为最新的值。实现双向绑定的必要条件是必须要是表单元素,且设置了ng-model;

5,angularjs的一些语法整理:(前提:先引入angular.js )

(1)创建模块:angular.module( '模块名字' , [依赖模块] )

(2)创建控制器:angular.controller('控制器名字',[ '$scope',function($scope){  } ])

(3)配置路由:有两种方式:

第一种:angular-route : 

将ngRoute作为依赖模块;

然后配置路由:模块对象.config( function( $routeProvider){   

$routeProvider.when( '锚点值',{  template/templateUrl : "请求模版" }  ).when('锚点值',{  template/templateUrl : "请求模版" }  ).otherwise("默认锚点值")

 })

页面中要有一个盒子设置属性 ng-view然后情求到的内容会呈现在这个盒子中。

第二种:angular-ui-router:

将ui.router作为依赖模块;

然后配置路由:模块对象.config( function($stateProvider){

$stateProvider.state( { url:锚点值;template/templateUrl:"请求模版"; name:"路由名字" }).state({ url:锚点值;template/templateUrl:"请求模版"; name:"路由名字" })      })

页面中要有一个盒子设置属性 ui-view然后情求到的内容会呈现在这个盒子中。注意页面链接中href属性不能设置,应该设置 ui-sref ='路由名字'。

(4)自定义指令:模块对象.directive( '指令名字',[ function(){

return {   

transclude:true;  // 是否保存原指令标签内部的信息(不是模版中的信息)

template/templateUrl :"模版路径";

restrict: ECMA //可以使用的指令类型:依次为:元素,类名,注释,属性

replace:true //是否删除自定义标签

scope: true / false / { }  //是否开辟一个局部作用域,自定义指令默认没有作用域

link:function(scope,element,attributes){   dom操作  }

 }  ])

关于自定义指令有几点需要说明;(1)scope 的取值:1-如果没有写这个属性或者赋值为false,都是默认不开辟局部作用域,会继承父级 ;2-如果赋值为true,会开辟一个局部作用域,也会继承父级;3-如果赋值为一个对象 :则为隔离作用域。比如{msg : "@" },则@会去指令所在的元素身上找有没有一个叫做msg的同名属性,如果有,将同名属性的值赋给当前指令内部的msg,通过@取到的数据,得到的结果都是字符串。如果是{ msg:"=" } ,情况和上面一样,只不过此时msg原本是什么类型就得到什么类型 (2)link函数中的三个参数说明:三个形参可以随意指定,不过注意语义化;第一个形参scope:向指令所在的模版内部暴露数据 ; 第二个参数element:当前指令所在的元素;第三个参数:当前指令所在元素身上的属性集合;

今天先更新到这里,稍后继续.........

相关文章

  • Angular简介

    Angular.js和Angular4(Angular)及其他框架对比 Angular1(1.x)被称为Angul...

  • [FE] Hello Angular

    AngularJS 1.x是Angular的上一代框架,Angular团队做了规范,老框架为AngularJS 1...

  • 前端三大框架小结

    前端三大框架:Vue、React、Angular(AngularJS1.x) 前端三大框架全家桶: Angular...

  • react

    react 没有最好的框架,只有最合适的框架 angular1 vue angular1和react 复杂度 r...

  • 2022-08-30

    Angular 1.框架背景 Angular 是一个由 Google维护的开源JavaScript框架,用于在HT...

  • Angular框架-1

    1,Angular是一个非常优秀的前端js框架,它是由谷歌团队负责研发和维护的,通常用来构建单页面应用。angul...

  • 初学angular

    angular是MVC的一个框架。 angular模块化 1.定义模块 angular.module('名字',[...

  • REACT入门

    1. 概述 1.1. 概述 颠覆式前端UI开发框架。相对Angular,Angular作为一个MVVM框架,显得过...

  • vue基础知识

    引子 前端三大框架: +Angular Google Angular.js(1.x) Augular(2.x) +...

  • 第1节:初识Angular-搭建开发应用的环境

    1.1.3 搭建开发Angular应用的环境 1.下载Angular文件框架库 在Angular的官方网站(htt...

网友评论

    本文标题:Angular框架-1

    本文链接:https://www.haomeiwen.com/subject/ijueextx.html