位置: 编程技术 - 正文

brook javascript框架介绍

编辑:rootadmin
brook引用了UNIX下的pipe概念,轻松把所有的处理都串联起来以共同完成任务。前一个处理的输出作为后一个处理的输入来完成参数的传递。通过brook你可以以MVC的方式来写你的javascript程序。 brook 积木网下载brook框架使用namespace库用于模块的组织。 这里再次用例子说明一下namespace的使用方法: 要想理解brook框架,需要理解brook的几个核心概念。 promise 简单来说,promise就是封装过的函数,它就是负责把值传给下一个promise。就好比接力赛时候,把接力棒(value)传给下一个成员(promise)。这样就可以可以让非同步的处理能够按照类似同步处理的顺序来编程。 那我们来看看promise能做什么。比如有这样的要求 :等一秒 :输出moge :等两秒 :输出muga 不用promise的时候: 这样的代码处理顺序不好理解。如果改用promise的话: 其中bind函数可以接受多个参数,也可以写成这样: ns.wait().bind(p1, ns.wait(), p2).run(); promise的使用方法: 1:等待几秒可以使用brook.util下的wait方法 2:promise之间“棒的交接”是通过bind方法实现的,也就是UNIX下的PIPE功能。 3:最后需要执行run()方法 channel channel顾名思义就是频道,管道的意思。在brook里它表示promise的集合。可以把多个promise存放到一个channel里,然后一起执行。 channel的使用方法: 1:observer:把promise追加到channel中 2:sendChannel:确定channel 3:最后通过run来执行channel里所有promise model model是对channel进行包装而成的。在model里可以定义带有名字的channel,这些channel都是一个个的method。 这个组件可以明确MVC中的M和V,即模块和视图。它可以写出这样的处理,model的method执行之后,它的结果传到一个或者多个view(promise)。这就是观察者模式。 model的使用方法: :ns.createModel():生成model :model.addMethod():定义method名和相应的处理promise :ns.from():定义model的某个method执行完之后的处理 :model.notify():执行model的method widget widget负责把html和命名空间的模块关联起来。看一个简单的例子。 首先定义一个sample.widget的namespace。 下面就是关于sample.widget的html页面。 这段代码会把data-widget-namespace指定为sample.widget的div内容全部置换成hello world! run()和subscribe()的区别 promise执行的时候需要使用run()方法。一个promise链处理完之后需要执行回调函数的时候不使用run,使用subscribe。 brook.util 这个模块里面定义很多有用的方法。 mapper:定义装饰处理 filter:过滤器 scatter:分散器,value里面的值依次调用下一个promise takeBy:从value里面一次取n个调用下一个promise wait:等待n毫秒 cond:有条件执行promise,第一个参数是过滤器,第二个参数是promise。第一个参数为true的时候执行第二个参数的promise。 match:根据value的值来决定执行哪一个promise。 from:为promise链传递初始参数,也可以用run来传递。 最后还可以通过github首页的例子来体会,brook是怎么实现MVC模式的。

推荐整理分享brook javascript框架介绍,希望有所帮助,仅作参考,欢迎阅读内容。

brook javascript框架介绍

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

js面向对象设计用{}好还是function(){}好(构造函数) 在网上看了很多JavaScript的项目,用到对象都是采用{}的形式:例如jQuery,TinyMCE等都是形如:varDialog={int:function(){....},insert:function(){....},pop:function(){....}};//调用

关于javascript function对象那些迷惑分析 js中function对象是一个令人着迷的东西,但由于他太过于灵活,常常令人迷惑,下面我贴一些代码:大多数人这样简写:functiontest(){}《jsvascript语言精粹

JavaScript 类型的包装对象(Typed Wrappers) 例如:newBoolean(false)会返回一个对象,该对象有一个valueOf方法会返回被包装的值。这其实完全没有必要,并且有时还令人困惑。不要使用newBoolean、newNumb

标签: brook javascript框架介绍

本文链接地址:https://www.jiuchutong.com/biancheng/385757.html 转载请保留说明!

上一篇:Javascript面向对象编程(三) 非构造函数的继承(javascript面向对象编程指南 pdf)

下一篇:js面向对象设计用{}好还是function(){}好(构造函数)(js面向对象写法)

  • 企业清算过程中发生的费用
  • 税盾是怎么产生的
  • 利润分配未分配利润是什么科目
  • 个人劳务费的免税政策
  • 企业注销处置固定资产需要缴纳哪样税
  • 合同资产在资产负债表中列入什么项目
  • 预收款项增值税
  • 结转累计折旧分录
  • 单位捐赠汽车账务处理要如何做?
  • 车辆维修费
  • 317房地产政策解读
  • 微税平台怎么打印发票
  • 建筑行业劳务费开发票可以开工程款吗?
  • 普通发票和增值税发票都能报销吗
  • 收承兑汇票还要交税吗
  • 汽车中介赚钱吗
  • 海关对现金携带数量有要求吗
  • 以销定产 以产定销
  • 已开发票做账联放哪里
  • 购入低值易耗品一批,实际成本4000元
  • 金税盘基本信息设置
  • 如何设置老板键
  • 电脑看电影开全屏画面会迟钝是什么原因
  • 天猫公司不开银行卡吗
  • 车辆维修费可以抵扣进项吗
  • 服务外包企业
  • 个人银行卡作为公司备用金影响
  • php str split
  • php读取opc
  • 莱奇沃思田园城市
  • ui.exe啥意思
  • php中session什么意思
  • 固定资产的减值准备,一经确认,不得转回
  • 银行利息收入应计入什么科目
  • 收到证券公司异常交易
  • 工程材料费发票没拿到是否能预提费用
  • 深入分析php优化模型
  • php中定义函数
  • 存放中央银行款项借方表示什么意思
  • php微信分享源码
  • 手工明细账簿怎么登账
  • 个人所得税生产经营所得B表
  • 职工教育经费申报表如何填写
  • 企业注销时还有进项税
  • python中的装饰器的使用实战
  • python中mktime函数
  • 销售商品尚未发出会计分录
  • 印花税按金额还是价税合计交
  • 其他应付款的会计编码
  • sql的应用
  • 库存和结存
  • 购买会计软件如何入账
  • 账务处理有哪几种
  • 员工体检的发票在哪里开
  • 全资子公司合并报表编制
  • mysql死锁的例子
  • win7如何查看电脑
  • 微软和苹果是什么关系
  • 系统有乱码怎么解决
  • securecrt keymap
  • xp开机启动项在哪里设置方法
  • win7本地磁盘图标变了
  • 手机上的安全模式是什么
  • vim中执行shell命令
  • 文件夹底部显示
  • win7未能启动怎么办
  • win7本地连接ipv4属性闪退
  • cocos2d CC_CALLBACK_0/1/2/3之间的区别
  • echarts splitnumber
  • node.js动态网页
  • 简述android应用的常用开发模式及其优缺点
  • 用bat打开cmd执行命令
  • python利用matplotlib将扇形平分成50份
  • JavaScript html5 canvas绘制时钟效果(二)
  • android 设置竖屏
  • 原生js实现移动站点头部搜索栏背景色透明度变化
  • 湖北省国税务局钟敏副局长
  • 发票上的税额由谁填写
  • 发货确认收入还是以开票确认收入
  • 加拿大的环保
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设