初识SmartJS - AOP三剑客


Posted in Javascript onJune 08, 2014

SmartJS的内容规划比较多,也无法在短时间全部完成,目前就以小版本一个个功能累加。

第一期0.1版发布的内容主要是实现前端面向切面编程(AOP)的一些支持。

    1. PromiseEvent

基于事件和promise的回调管理,类似于jquery的callbacks,但具有结果传递,优先级,事件参数,promise控制等功能

2. Trigger

触发器,在对象上应用触发器(aop)功能,目标对象会具有方法注入功能(基于promiseEvent),注入的类型有before,after和round环绕三种;

3. FlowController

流程/生命周期控制器,控制流程的执行和流转,基于Trigger

4. 常用方法;

//合并默认数据方法,将obj中空的内容从defObj中复制;与jquery的$.extend不通,只会加入不存在的数据

st.mergeObj(deep, obj, defObj, exclude)

//在目标对象方法中注入方法,返回结果

st.injectFn(target, name, fn, before,stopOnFalse)

//合并方法,返回结果

st.mergeFn(fn, mergeFn,stopOnFalse)

 另外声明一下,十分抱歉,以前承诺的smartUI2.0一直没有完成,想法一直在变,而且这两年发现自己能支配的时间也越来越少。不过smartjs后续规划中也会有ui方面的内容,也相当于将smartUI并于Smartjs中。

后期预告:smartjs 0.2版中,会加入oop支持的一些内容。

最后附上地址smart地址,里面有比较丰富的测试用例,api的话后续会更新博客逐一说明。

Javascript 相关文章推荐
HTML中的setCapture和releaseCapture使用介绍
Mar 21 Javascript
jquery中选择块并改变属性值的方法
Jul 31 Javascript
Javascript setInterval的两种调用方法(实例讲解)
Nov 29 Javascript
js出生日期 年月日级联菜单示例代码
Jan 10 Javascript
jQuery使用hide方法隐藏指定元素class样式用法实例
Mar 30 Javascript
JS实现左右拖动改变内容显示区域大小的方法
Oct 13 Javascript
全面详细的jQuery常见开发技巧手册
Feb 21 Javascript
AngularJS 作用域详解及示例代码
Aug 17 Javascript
JS实现禁止高频率连续点击的方法【基于ES6语法】
Apr 25 Javascript
jQuery实现使用sort方法对json数据排序的方法
Apr 17 jQuery
EasyUI 数据表格datagrid列自适应内容宽度的实现
Jul 18 Javascript
vue实现用户长时间不操作自动退出登录功能的实现代码
Jul 23 Javascript
javascript实例分享---具有立体效果的图片特效
Jun 08 #Javascript
js 中将多个逗号替换为一个逗号的代码
Jun 07 #Javascript
js 去除字符串第一位逗号的方法
Jun 07 #Javascript
javascript去除字符串中所有标点符号和提取纯文本的正则
Jun 07 #Javascript
用js替换除数字与逗号以外的所有字符的代码
Jun 07 #Javascript
javascript写的异步加载js文件函数(支持数组传参)
Jun 07 #Javascript
关于JavaScript命名空间的一些心得
Jun 07 #Javascript
You might like
详解PHP数据压缩、加解密(pack, unpack)
2016/12/17 PHP
通过js简单实现将一个文本内容转译成加密文本
2013/10/22 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
2014/01/07 Javascript
JavaScript数组常用方法
2015/03/02 Javascript
javascript框架设计之种子模块
2015/06/23 Javascript
微信小程序 教程之条件渲染
2016/10/18 Javascript
AngularJS实现与Java Web服务器交互操作示例【附demo源码下载】
2016/11/02 Javascript
基于Vuejs框架实现翻页组件
2020/06/29 Javascript
原生js实现键盘控制div移动且解决停顿问题
2016/12/05 Javascript
JavaScript实现翻页功能(附效果图)
2017/02/16 Javascript
JavaScript中的普通函数和箭头函数的区别和用法详解
2017/03/21 Javascript
JavaScript实现移动端页面按手机屏幕分辨率自动缩放的最强代码
2017/08/18 Javascript
js es6系列教程 - 新的类语法实战选项卡(详解)
2017/09/02 Javascript
浅谈 vue 中的 watcher
2017/12/04 Javascript
Element ui 下拉多选时新增一个选择所有的选项
2019/08/21 Javascript
利用JS代码自动删除稿件的普通弹幕功能
2019/09/20 Javascript
浅析Vue 中的 render 函数
2020/02/28 Javascript
绘制微信小程序验证码功能的实例代码
2021/01/05 Javascript
Python操作CouchDB数据库简单示例
2015/03/10 Python
详解Python 序列化Serialize 和 反序列化Deserialize
2017/08/20 Python
对Python中的@classmethod用法详解
2018/04/21 Python
Python中一些不为人知的基础技巧总结
2018/05/19 Python
对Python捕获控制台输出流的方法详解
2019/01/07 Python
python 正则表达式参数替换实例详解
2020/01/17 Python
pytorch查看模型weight与grad方式
2020/06/24 Python
Aveda美国官网:天然护发产品、洗发水、护发素和沙龙
2016/12/09 全球购物
Needle & Thread官网:英国仙女品牌
2018/01/13 全球购物
西班牙手机之家:Phone House
2018/10/18 全球购物
Java如何读取CLOB字段
2013/10/10 面试题
劳动之星获奖感言
2014/02/01 职场文书
教师求职信
2014/06/17 职场文书
党员考试作弊检讨书1000字
2015/02/16 职场文书
九年级化学教学反思
2016/02/22 职场文书
idea 在springboot中使用lombok插件的方法
2021/08/02 Java/Android
使用Spring处理x-www-form-urlencoded方式
2021/11/02 Java/Android
PostgreSQL数据库去除重复数据和运算符的基本查询操作
2022/04/12 PostgreSQL