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 相关文章推荐
详解JavaScript函数绑定
Aug 18 Javascript
js截取固定长度的中英文字符的简单实例
Nov 22 Javascript
js禁止页面刷新与后退的方法
Jun 08 Javascript
如何利用Promises编写更优雅的JavaScript代码
May 17 Javascript
jQuery实现点击后高亮背景固定显示的菜单效果【附demo源码下载】
Sep 21 Javascript
jQuery基于排序功能实现上移、下移的方法
Nov 26 Javascript
详解Jquery 遍历数组之$().each方法与$.each()方法介绍
Jan 09 Javascript
微信小程序实现带刻度尺滑块功能
Mar 29 Javascript
360doc网站不登录就无法复制内容的解决方法
Jan 27 Javascript
解决vue项目使用font-awesome,build后路径的问题
Sep 01 Javascript
vue中注册自定义的全局js方法
Nov 15 Javascript
Js实现粘贴上传图片的原理及示例
Dec 09 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
关于session在PHP5的配置文件中的详细设置参数说明
2011/04/20 PHP
Thinkphp+smarty+uploadify实现无刷新上传
2015/07/30 PHP
Yii框架实现邮箱激活的方法【数字签名】
2016/10/18 PHP
php如何修改SESSION的生存存储时间的实例代码
2017/07/05 PHP
JS 学习笔记 防止发生命名冲突
2009/07/30 Javascript
JavaScript 异步调用框架 (Part 1 - 问题 & 场景)
2009/08/03 Javascript
javaScript同意等待代码实现心得
2011/01/01 Javascript
jquery常用技巧及常用方法列表集合
2011/04/06 Javascript
读jQuery之一(对象的组成)
2011/06/11 Javascript
zTree插件下拉树使用入门教程
2016/04/11 Javascript
nodejs中使用HTTP分块响应和定时器示例代码
2017/03/19 NodeJs
微信小程序获取微信运动步数的实例代码
2017/07/20 Javascript
VsCode插件整理(小结)
2017/09/14 Javascript
使用JavaScript破解web
2018/09/28 Javascript
JavaScript this使用方法图解
2020/02/04 Javascript
JS实现烟花爆炸效果
2020/03/10 Javascript
jQuery实现移动端下拉展现新的内容回弹动画
2020/06/24 jQuery
[00:35]DOTA2上海特级锦标赛 VP战队宣传片
2016/03/04 DOTA
python实现定时自动备份文件到其他主机的实例代码
2018/02/23 Python
python将每个单词按空格分开并保存到文件中
2018/03/19 Python
使用Python制作简单的小程序IP查看器功能
2019/04/16 Python
django框架事务处理小结【ORM 事务及raw sql,customize sql 事务处理】
2019/06/27 Python
解决pandas展示数据输出时列名不能对齐的问题
2019/11/18 Python
python爬虫库scrapy简单使用实例详解
2020/02/10 Python
Iconfont(矢量图标)+iconmoon(图标svg互转)配合javascript实现社交分享系统
2020/04/21 Python
python可迭代对象去重实例
2020/05/15 Python
如何在python中判断变量的类型
2020/07/29 Python
python打包生成so文件的实现
2020/10/30 Python
tensorflow2.0教程之Keras快速入门
2021/02/20 Python
中学家长会邀请函
2014/02/03 职场文书
《王二小》教学反思
2014/02/27 职场文书
应届大学生自荐书
2014/06/17 职场文书
关于五一放假的通知
2015/08/18 职场文书
祝福语集锦:送给闺蜜的生日祝福语
2019/10/08 职场文书
Vue过滤器(filter)实现及应用场景详解
2021/06/15 Vue.js
你需要掌握的20个Python常用技巧
2022/02/28 Python