AngularJS初探

前言

现在前端的技术发展是如此之快,各种框架层出不穷,AngularJS无疑是十分耀眼的一个。仅以此篇博文开启学习AngularJS之门,共勉。

正文

一、AngularJS特性

AngularJs是一个用于设计动态web应用的结构框架,其有很多优秀的特性,如模板机制、数据绑定、模块、指令、依赖注入、路由,这里暂且不对其原理做深入探究,毕竟还不知道怎么用这些高级的功能。

二、基础知识

在这篇文章的最后我要写一个常见的应用—Todo,下面是一些必要的准备知识。

1、指令:指令是ng为HTML补充的语法扩展,用于增强HTML的表现力。
2、模板与数据的绑定:通过ng-model实现。何为双向绑定,通俗讲就是两者将随时保持同步,最新的数据会实时显示在页面中,页面中用户修改的数据也会实时被记录在数据模型中。
3、循环输出:ng-repeat实现
4、事件:ng-event实现

不多说了,还是结合例子来看吧,更容易明白。

三、Todo

1、可以先简单的将AngularJS视为MVC框架。那么模板是什么?我理解为:包含ng-controller指令的标签内(包括其自身)的html内容。
<div ng-controller="Todo">
    <input type="text" ng-model="data.item" ng-keyup="add($event)">
    <ul>
        <li ng-repeat="o in data.list">
            <span>{{o.content}}</span>
            <a href="javascript:;" ng-click="del($index)">删除</a>
        </li>
    </ul>
</div>

 - 首先把input内的输入内容与数据中的data.item绑定,随着输入内容的变化data.item自动发生改变。
 - 在键盘抬起的时候会触发add方法,且参数为event事件。
 - data.list在数据中是一个数组,通过ng-repeat指令可以做到循环输出。
 - 在点击删除的时候触发del方法,其参数$index代表的是当前循环的索引。
2、下面是MVC中的M,即model。这里的model是跟C即控制器是对应的,每个控制器下面会有一个作用域$scope。模板中用到的数据以及方法都需要挂载在$scope下面才可以被找到。
var app = angular.module("MyApp",[]);
app.controller('Todo',function($scope){
    $scope.data = {
        'item' : '',
        'list' : [] 
    };
    $scope.add = function(e){
        if(e.keyCode==13){
            $scope.data.list.push({'content':$scope.data.item});
            $scope.data.item = '';
        }
    },
    $scope.del = function(index){
        $scope.data.list.splice(index,1);
    }
});
 - 首先可以看到,抬起回车键就会向data.list内加入一条数据,model的变化可以实时的展现在view上。
 - 点击删除时会根据索引删除掉data.list内的一条数据

结语

AngularJS可以很大程度上简化我们的工作,并且有很多很酷的特性,值得我们去深入探索。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值