angularjs1.X 重构controller 的方法小结


Posted in Javascript onAugust 15, 2019

本篇是内部培训交流会的摘要总结。

培训PPT和示例代码已托管至我的github仓库:

https://github.com/dashnowords/blogs/tree/master/Demo/rebuild-angularjs-controller

一. 结构拆分

小型项目

通过子路由实现拆分分层,父级控制器控制共享模块,提供公共能力,子级分管自己的模块,父子级之间通过消息机制进行通讯。

angularjs1.X 重构controller 的方法小结

中型项目

通过组合视图实现模块划分,组合视图共享同一个路由地址,分管不同的模块,组合视图之间需要通过父级控制器(或组合视图的根控制器)来实现通讯。

angularjs1.X 重构controller 的方法小结

大型项目

通过视图组件指令,业务模块指令来进行更细粒度的模块拆分,模块通信依然建议通过消息机制来进行。

angularjs1.X 重构controller 的方法小结

二.基本代码优化

1.业务逻辑代码

封装Service,通过依赖注入在Controller中或指令中使用。

2.数据加工代码

建议使用表达性更强的通用工具库underscore.jslodash.js提升效率,精简代码。

3.DOM操作

建议学习和习惯Angular数据驱动的主导思想,通过数据来启用或消除DOM操作,具体的执行需要通过自定义指令进行实现。

总结

以上所述是小编给大家介绍的angularjs1.X 重构controller 的方法小结,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Javascript 相关文章推荐
用于自动添加Digg This!按钮的JavaScript
Dec 23 Javascript
基于jquery实现的类似百度搜索的输入框自动完成功能
Aug 23 Javascript
js 获取屏幕各种宽高的方法(浏览器兼容)
May 15 Javascript
jquery判断元素的子元素是否存在的示例代码
Feb 04 Javascript
JS+CSS实现下拉列表框美化效果(3款)
Aug 15 Javascript
Node.js Addons翻译(C/C++扩展)
Jun 12 Javascript
需要牢记的JavaScript基础知识
Sep 25 Javascript
使用jquery+iframe做一个ajax上传效果(实例)
Aug 24 jQuery
AngularJS实现的锚点楼层跳转功能示例
Jan 02 Javascript
详解解决使用axios发送json后台接收不到的问题
Jun 27 Javascript
浅谈vue后台管理系统权限控制思考与实践
Dec 19 Javascript
15分钟上手vue3.0(小结)
May 20 Javascript
浅析Vue中拆分视图层代码的5点建议
Aug 15 #Javascript
vue的keep-alive用法技巧
Aug 15 #Javascript
Vue开发环境中修改端口号的实现方法
Aug 15 #Javascript
Vue触发隐藏input file的方法实例详解
Aug 14 #Javascript
如何使用50行javaScript代码实现简单版的call,apply,bind
Aug 14 #Javascript
微信小程序之数据绑定原理解析
Aug 14 #Javascript
微信公众号平台接口开发 菜单管理的实现
Aug 14 #Javascript
You might like
php 图片上添加透明度渐变的效果
2009/06/29 PHP
探讨PHP调用时间格式的参数详解
2013/06/06 PHP
Sample script that displays all of the users in a given SQL Server DB
2007/06/16 Javascript
JS 自动安装exe程序
2008/11/30 Javascript
基于jQuery实现的百度导航li拖放排列效果,即时更新数据库
2012/07/31 Javascript
Javascript玩转继承(一)
2014/05/08 Javascript
jquery实现简单的轮换出现效果实例
2015/07/23 Javascript
js实现Select列表各项上移和下移的方法
2015/08/14 Javascript
有关easyui-layout中的收缩层无法显示标题的解决办法
2016/05/10 Javascript
jQuery实现布局高宽自适应的简单实例
2016/05/28 Javascript
jQuery中show与hide方法用法示例
2016/09/16 Javascript
Vue.js实现无限加载与分页功能开发
2016/11/03 Javascript
js中url对象化管理分析
2017/12/29 Javascript
原生JS实现的雪花飘落动画效果
2018/05/03 Javascript
vue富文本框(插入文本、图片、视频)的使用及问题小结
2018/08/17 Javascript
mui js控制开关状态、修改switch开关的值方法
2019/09/03 Javascript
layui中select,radio设置不生效的解决方法
2019/09/05 Javascript
vue 实现走马灯效果
2019/10/28 Javascript
vue实现编辑器键盘抬起时内容跟随光标距顶位置向上滚动效果
2020/05/28 Javascript
使用原生javascript开发计算器实例代码
2021/02/21 Javascript
Python函数参数类型*、**的区别
2015/04/11 Python
详解Django之admin组件的使用和源码剖析
2018/05/04 Python
浅谈关于Python3中venv虚拟环境
2018/08/01 Python
Python实现带参数的用户验证功能装饰器示例
2018/12/14 Python
pyqt5 comboBox获得下标、文本和事件选中函数的方法
2019/06/14 Python
Django之创建引擎索引报错及解决详解
2019/07/17 Python
获取CSDN文章内容并转换为markdown文本的python
2020/09/06 Python
python模拟点击在ios中实现的实例讲解
2020/11/26 Python
小学生元旦感言
2014/02/26 职场文书
结婚保证书范文
2014/04/29 职场文书
小学生运动会通讯稿
2014/09/23 职场文书
综合测评个人总结
2015/03/03 职场文书
2015年七一建党节演讲稿
2015/03/19 职场文书
学生通报表扬范文
2015/05/04 职场文书
SQL语句中JOIN的用法场景分析
2021/07/25 SQL Server
python实现会员管理系统
2022/03/18 Python