MVC模式(以angularjs为例)
来源:互联网 发布:幼儿教育发展前景知乎 编辑:程序博客网 时间:2024/05/29 18:11
1.何为MVC模式
- Model 模型数据:在ng中定义的一些变量
- View 视图:通过ng指令和表达式增强版的html
- ontroller 控制器:负责数据的增删改查的
MVC的工作原理:
View视图 接收用户的输入,通过控制器(Controller)当中的方法,完成对于Model的增删改查的操作。
数据绑定:将数据和视图绑定起来,一旦数据被修改了,视图就会更新
angular四大特征:
①采用了MVC的设计模式
Model 模型数据
View 视图
Controller 控制器
MVC的工作原理:
View视图 接收用户的输入,通过控制器(Controller)当中的方法,完成对于Model的增删改查的操作。
数据绑定:将数据和视图绑定起来,一旦数据被修改了,视图就会更新
②双向数据绑定
数据-》视图
视图用户的输入 -》 数据
③依赖注入
④模块化设计
2.MVC的好处:
在实现大型应用程序,可以通过将视图和数据隔离开,有效的降低代码的复杂度、耦合度
3:在ng中应该怎么做才能实现一个SPA?
①创建一个模块
因为在ng中是以模块为基本单位的
var app = angular.module(‘模块的名称’,[‘依赖模块1’,’依赖模块2’])
如: var app = angular.module('myModule',['ng']);
②使用模块
采用ngApp指令:一般写在html或者body
如:<html ng-app="模块的名称"></html>
③创建一个控制器
app.controller(‘控制器的名称’,function(){})
第二个参数是控制器被调用时,要执行的方法
④调用控制器
采用ngController指令来调用控制器
<div ng-controller='控制器的名称'></div>
⑤实现数据的创建和显示等:
操作数据、显示出来
值得注意的是:
①
绑定事件的时候,在ng的做法:
<any ng-eventName="handle()"> <button> ng-click="handleClick()"></button>如:点击事件 ng-click="handle()"
下面享上一个demo
<!DOCTYPE html><html ng-app="myApp"><!--2调用模板--><head lang="en"> <meta charset="UTF-8"> <script src="js/angular.js"></script> <title></title></head><body><!--4完成控制器的调用,同时指定了$scope中定义的模型数据的作用范围--><div ng-controller="myCtrl"> <p>{{number}}</p></div><script> //1、模块的创建 //注意事项:module方法的第二个参数是一个有模块名称字符串所构成的数组 var app = angular.module('myApp',['ng']); //2、调用模块 //借助于ngApp //3、创建控制器 app.controller('myCtrl', function ($scope) { console.log('myCtrl 指定的方法被调用了!'); //定义一个Model模型数据 //$scope是建立数据和视图的桥梁, // 并不能直接拿来用,可以在控制器的处理函数中 // 的形参中指定$scope,然后就可以用了 $scope.number = 10; }); //4、调用控制器 // ngController</script></body></html>
- MVC模式(以angularjs为例)
- MVC设计模式(以Django为例)
- MVC模式的增删改查(以注册为例)
- angularjs的MVC模式
- 自己做MVC框架(以登录页面为例)
- AngularJS中的MVC模式应用
- MVC设计模式下的Dao的设计以及基础框架的搭建(以对数据库进行插入和查询为例)
- 单例模式的缺陷(以php为例)
- MVP架构模式以winform为例
- 以css为例谈设计模式
- JS Ajax 请求实例详解(基础入门篇,以.NET MVC 为例)
- Spring MVC中加载配置properties文件(以配置Redis为例)
- J2EE开发 MVC 以OA系统为例
- Swing程序最佳架构设计—以业务对象为中心的MVC模式
- Swing程序最佳架构设计—以业务对象为中心的MVC模式
- 使用XML,Spring,和struts以MVC为设计模式的分布式应用程序框架
- Swing程序最佳架构设计—以业务对象为中心的MVC模式
- python与设计模式之二 装饰器模式(以dota为例)
- python3 登录公众号并抓取数据
- Java数据结构与算法解析---AVL树
- hibernate核心api
- js数组去重
- 中企18年 用行动践行企业数字化同行者
- MVC模式(以angularjs为例)
- 八种排序算法分析
- javascrip之练习测试(2)
- Linux基本命令---3
- 从零开始前端学习[18]:前端中重要的属性,浮动float属性
- simone牌文本编辑器
- MySQL Distinct 去掉查询结果重复记录
- 微信公众号自定义二维码关注后自动为粉丝分组
- Android Studio 配置release的签名