angular中的一些DOM操作

## angular中的DOM操作


jqLite可以理解成是阉割、精简版的jquery,如果你有需求比如说想要获取兄弟元素,但jqLite没有提供这个方法,可以通过变通的方式,比如可以先找parent(),然后再找childern()来实现


```javascript
//这是用jquery来写的
$(document).ready(function () {
            var $ele = $('#demo');
            $ele.on('mouseenter', function () {
                $ele.css('background', 'blue');
            });
            $ele.on('mouseleave', function () {
                $ele.css('background', 'red');
            });
        })
```
转换成angular的jQLite则书写方式如下:
```javascript
angular.element(document).ready(function () {
            var $ele = angular.element(document.querySelector('#demo'));
            $ele.on('mouseenter', function () {
                $ele.css('background', 'blue');
            });
            $ele.on('mouseleave', function () {
                $ele.css('background', 'red');
            });
        })
```




## angular开发流程
- angular开发流程当中最重要的是 --> 数据建模
- 如何进行数据建模
    + 看到input --> ng-model --> 
    + 看到数据,是不能写死的,必须要通过后台进行渲染的 --> 表达式 --> 数据模型


## mvvm




1、不理解也没关系


mvc代码组织的一种,分成三大块


比如说我们把笔记本用MVC的思想进行拆分:
cpu c控制器
硬盘 数据模型
显示器 视图


mvc只是把代码简单的分成三大块
流程:
1、控制器通过ajax从后台拿到数据(数据模型)
2、控制器负责把数据渲染到页面上(视图)


![](http://7fvanf.com1.z0.glb.clouddn.com/17-8-17/89051698.jpg)




但是我们在写代码的时候会发现我们操作DOM比较麻烦,所以,为了更进一步的简化我们的代码,我们会考虑把代码拆分得更细一点,同时,构造出来一个viewModel,这个viewModel和视图是一一对应对应的映射关系,
流程:
1、控制器负责从后台拿到数据(model)
2、控制器把数据转换成viewModel(也就是用来和视图进行一一对应的数据)


![](http://7fvanf.com1.z0.glb.clouddn.com/17-8-17/14315394.jpg)


只要我们做完了这二步即可,我们不用考虑怎么把数据渲染到页面上面,因为框架会自动帮助我们把viewModel(也就是$scope)中的东西和视图进行一一对应


记住下面的结论:
1、基本上所有的前端用的是 --> mvvm:双向数据绑定就意味着用了MVVM
2、基本上所有的后端框架用的是 --> mvc
3、双向数据绑定意味着MVVM
4、angular用的是MVVM,而不是MVC






## 按按文件类型、按功能进行划分代码
按文件类型划分
按功能划分


tab
lunbo


按功能划分更好一点
项目比较简单


按功能进行划分


三种:
传统方式
面向对象


最后一种方式








4种
1.2.x
面向对象的方式
安全的方式






<div ng-class='{a:true}' class="b">


ng-class
1. 不止限于ng-repeat
2. <div class="a b">
3. 只要看到样式在变,就应该想到用ng-class


## 和ng-class类似的东西
- <a href="{{myUrl}}"> --> ng-href
- <img src="{{myImgSrc}}"> --> ng-src



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值