初识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 相关文章推荐
基于prototype的validation.js发布2.3.4新版本,让你彻底脱离表单验证的烦恼
Dec 06 Javascript
javaScript年份下拉列表框内容为当前年份及前后50年
May 28 Javascript
全面解析Bootstrap表单使用方法(表单样式)
Nov 24 Javascript
Node.js的MongoDB驱动Mongoose基本使用教程
Mar 01 Javascript
jQuery中animate的几种用法与注意事项
Dec 12 Javascript
bootstrap日历插件datetimepicker使用方法
Dec 14 Javascript
使用gulp搭建本地服务器并实现模拟ajax
Apr 05 Javascript
详解AngularJS controller调用factory
May 19 Javascript
bootstrap-table.js扩展分页工具栏(增加跳转到xx页)功能
Dec 28 Javascript
微信小程序实现通过双向滑动缩放图片大小的方法
Dec 30 Javascript
vue+element加入签名效果(移动端可用)
Jun 17 Javascript
使用Webpack 搭建 Vue3 开发环境过程详解
Jul 28 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
实现获取http内容的php函数分享
2014/02/16 PHP
PHP安装threads多线程扩展基础教程
2015/11/17 PHP
用JQuery 实现AJAX加载XML并解析的脚本
2009/07/25 Javascript
早该知道的7个JavaScript技巧
2013/03/27 Javascript
jquery可见性过滤选择器使用示例
2013/06/24 Javascript
JS实现图片翻书效果示例代码
2013/09/09 Javascript
7个让JavaScript变得更好的注意事项
2015/01/28 Javascript
jQuery如何防止这种冒泡事件发生
2015/02/27 Javascript
jQuery获取及设置表单input各种类型值的方法小结
2016/05/24 Javascript
微信小程序 网络API 上传、下载详解
2016/11/09 Javascript
node.js 和HTML5开发本地桌面应用程序
2016/12/13 Javascript
jQuery层级选择器实例代码
2017/02/06 Javascript
JS中正则表达式全局匹配模式 /g用法详解
2017/04/01 Javascript
VUE使用 wx-open-launch-app 组件开发微信打开APP功能
2020/08/11 Javascript
python获取一组汉字拼音首字母的方法
2015/07/01 Python
Django 2.0版本的新特性抢先看!
2018/01/05 Python
python3 selenium 切换窗口的几种方法小结
2018/05/21 Python
关于python列表增加元素的三种操作方法
2018/08/22 Python
对Python 内建函数和保留字详解
2018/10/15 Python
python中的反斜杠问题深入讲解
2019/08/12 Python
Python 基于wxpy库实现微信添加好友功能(简洁)
2019/11/29 Python
python os模块常用的29种方法使用详解
2020/06/02 Python
Python 下载Bing壁纸的示例
2020/09/29 Python
Python如何实现感知器的逻辑电路
2020/12/25 Python
塔吉特百货公司官网:Target
2017/04/27 全球购物
印度尼西亚电子产品购物网站:Kliknklik
2018/06/05 全球购物
Notino匈牙利:购买香水和化妆品
2019/04/12 全球购物
团工委书记自荐书范文
2013/12/17 职场文书
餐饮周年庆活动方案
2014/08/14 职场文书
美国旅游签证工作证明
2014/10/14 职场文书
2014年艾滋病防治工作总结
2014/12/10 职场文书
2015年社区党务工作总结
2015/04/21 职场文书
2015年幼儿园德育工作总结
2015/05/25 职场文书
《水上飞机》教学反思
2016/02/20 职场文书
pycharm debug 断点调试心得分享
2021/04/16 Python
postman中form-data、x-www-form-urlencoded、raw、binary的区别介绍
2022/01/18 HTML / CSS