初识AngularJs(1)

来源:互联网 发布:电力cad软件 编辑:程序博客网 时间:2024/06/07 07:45
一、它像是前端的MVC,帮助前端开发人员在不介入后台的情况下更好的利用数据,实现前端页面的开发,先不去考虑AngularJs的使用,先想一想它的由来,苹果可不是真的砸到牛顿先生的脑袋上,才出现了万有引力定律的哦。
从四个方面来考虑:
1、数据从哪里来
2、如何包装数据
3、如何把数据发送和渲染给页面
4、页面如何接受数据

1.数据的得来有两种方式:

(1)数据库发送 
php  + MySQL ->   MySQL_query  得到的一定是这样一种数组或者是封装好的对象的形式,['1','wang',23]或者[{'id':1,'age':23},{'id':3,'age'}],然后将数据以$this->load->view('index.php',$arr) 的形式带给页面,进行一系列的渲染操作,这时会考虑用到php的循环,这个就不必多说,CI项目很常见,<?php foreach($blogs as $blog){?>...........yourcode.......<?php}?>,但是前端是不直接操作数据库的但是也要操作数据。
(2)JSON
利用json将要用到的数据先准备好,就像这样
var data = [{'id':1,'age':23},{'id':3,'age'}],但是用到的时候,还是很大可能性的循环,当然这个就要使用js进行dom操作,但是如果这些数据在不同的页面用到,还要重写代码,这样不科学,所以要学习CI,也要有个控制器,angularjs可以解决它,来实现:var data =[{'id':1,'age':23},{'id':3,'age'}],$this->load->view('index.php',$data),由此引出2,3问题。

2、3包装数据和发送数据及渲染页面

为了达到这个功能,控制器一定要有一个作用域的,所有的数据和方法都要绑定给一个对象,就像我们平时取作用域,getelementbyid('div1')一样,拿到的这个div就是当前选择的这个div作用域,这样才能进行你要的操作,这就涉及到两个问题,如何确定作用域以及将当前作用域变成一个控制器的对象。这两个都做到后,即可渲染数据了,如
var data={'id':1,name:'wang',
                set:function(){console.log('222');}}
对象.name ='123'
对象.fn = data.set;
再者说,
<div  id = 'div1' xx='yy' onclick= aa()>它本身就是一个对象的实例,Class div{id, onclik()},不能调用xx是因为没有封装它而已。通过var div = getelementbyid('div1'),调用div.id,div.onclick(),这个问题Angularjs帮助我们解决了。数据拿来了,然后转到最后一个问题。

4、页面如何接收数据

就像PHP这种嵌入式语言一样,前端应该提供一种模板语言来显示数据,当然HTML都是显示静态数据的,我们需要的是动态数据,nodejs中是这样滴<%  %>,于是{{}}出现了,只要你能解析就可以,{{name}},这个name 有多种形式,变量、表达式、函数、数组等等。
0 0
原创粉丝点击