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 相关文章推荐
js 获取浏览器高度和宽度值(多浏览器)
Sep 02 Javascript
jQuery学习笔记(1)--用jQuery实现异步通信(用json传值)具体思路
Apr 08 Javascript
document.documentElement的一些使用技巧
Apr 18 Javascript
jquery链式操作的正确使用方法
Jan 06 Javascript
node.js中的fs.chownSync方法使用说明
Dec 16 Javascript
js动态生成Html元素实现Post操作(createElement)
Sep 14 Javascript
简单实现js页面切换功能
Jan 10 Javascript
JS在浏览器中解析Base64编码图像
Feb 09 Javascript
jQuery EasyUI tree增加搜索功能的实现方法
Apr 27 jQuery
VUE 配置vue-devtools调试工具及安装方法
Sep 30 Javascript
Vue2.0 $set()的正确使用详解
Jul 28 Javascript
react-native 实现购物车滑动删除效果的示例代码
Jan 15 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
解决了Ajax、MySQL 和 Zend Framework 的乱码问题
2009/03/03 PHP
php修改时间格式的代码
2011/05/29 PHP
PHP对象Object的概念 介绍
2012/06/14 PHP
PHP中iconv函数知识汇总
2015/07/02 PHP
利用Laravel生成Gravatar头像地址的优雅方法
2017/12/30 PHP
鼠标移动到一张图片时变为另一张图片
2006/12/05 Javascript
在IE中调用javascript打开Excel的代码(downmoon原作)
2007/04/02 Javascript
基于jQuery的弹出消息插件 DivAlert之旅(一)
2010/04/01 Javascript
js获取当前select 元素值的代码
2010/04/19 Javascript
js操作输入框中选择内容兼容IE及其他主流浏览器
2014/04/22 Javascript
js实现点击链接后窗口缩小并居中的方法
2015/03/02 Javascript
JavaScript中通过prototype属性共享属性和方法的技巧实例
2015/03/13 Javascript
关于JavaScript的变量的数据类型的判断方法
2015/08/14 Javascript
jQuery获取及设置表单input各种类型值的方法小结
2016/05/24 Javascript
微信小程序 http请求详细介绍
2016/10/09 Javascript
JavaScript字符集编码与解码详谈
2017/02/02 Javascript
详解微信小程序调用支付接口支付
2019/04/28 Javascript
详解babel升级到7.X采坑总结
2019/05/12 Javascript
express中static中间件的具体使用方法
2019/10/17 Javascript
python利用有道翻译实现"语言翻译器"的功能实例
2017/11/14 Python
python turtle库画一个方格和圆实例
2019/06/27 Python
Flask框架重定向,错误显示,Responses响应及Sessions会话操作示例
2019/08/01 Python
将pytorch转成longtensor的简单方法
2020/02/18 Python
基于Python绘制美观动态圆环图、饼图
2020/06/03 Python
python如何实现读取并显示图片(不需要图形界面)
2020/07/08 Python
Python使用xpath实现图片爬取
2020/09/16 Python
python实现在列表中查找某个元素的下标示例
2020/11/16 Python
css3 box-sizing属性使用参考指南
2013/01/08 HTML / CSS
孕妇内衣和胸罩:Cake Maternity
2018/07/16 全球购物
奥林匹亚体育:Olympia Sports
2020/12/30 全球购物
大学生毕业自我评价范文分享
2013/11/11 职场文书
就业表自我评价分享
2014/02/06 职场文书
秋游活动策划方案
2014/02/16 职场文书
Django操作cookie的实现
2021/05/26 Python
简单介绍Python的第三方库yaml
2021/06/18 Python
Go语言实现一个简单的并发聊天室的项目实战
2022/03/18 Golang