今天看到
bellstar大侠发布的SUI,也看了一些设计及实现原理。觉得也应该吧自己以前的一些想法拉出来晒晒,交流一下,也希望对SUI的发展能有些参考价值,仅供参考而已。
文章是一年前写的,而且这些想法也在我JSISide中得到实现。与SUI重装出击的风格不同的是我在JSISide中的实现是非常轻量级的。
演示地址见:
http://www.xidea.org/project/jsiside/decorator/
引用
* 标签约定
o 放弃以前的自定义标签形式,而采用自定义属性
* 属性约定
o 通过-字符切分单词,能后使用骆驼风格转换成属性,赋值给装饰器对象
o 可以通过 #{}取脚本返回值,以定义复杂属性,和非字符串型的属性。
* ID自动生成
o 沿用1.0的方式,获取或自动生成html元素id,而不记录html元素对象。
* 装饰器装载
o 决定抛弃1.0中的provider属性,直接使用 d:class 属性指明装饰器类路径。
o 也可以设置默认装饰器包,装载装饰器时,探测默认包中是否存在指定的类名,不存在则按照完整路径寻找并异步装载装饰类。
* 构造函数
o MyDecorator(engin,parentDecorator);
o 构造器中传入装饰引擎对象和父装饰器,是否记录自行决定。
* 初始化
o 当装饰器实例身成后,立即更具元素属性,自动设置html标签中指定的属性集。
* before
o MyDecorator.prototype.before(child1,child2,child3...)
o 传入子装饰器元素,这时子装饰器紧紧执行了构造函数,赋值操作,并未执行before方法。
* decorate
o MyDecorator.prototype.decorate(child1,child2,child3...)
o 传入子装饰器元素,这时子装饰器已经完成了全部行为。
分享到:
相关推荐
JSI框架提供一个无侵入的脚本库管理解决方案,和一个全面的前端开发调试、文档解析、模版编译、打包导出环境支持。 作为一个开发期间的脚本管理工具,让开发者在开发期间享受JSI带来的种种便捷,也可以作为一个运行...
JSI-full-2.0
海尔液晶电源 0094001224B JSI-190419-050 JSI-220409-050原理图.pdf
这是JSI-GAN(AAAI2020)的官方存储库。 我们提供了培训和测试代码,以及经过训练的权重和用于JSI-GAN的数据集(train + test)。 如果您发现此存储库有用,请考虑引用我们的。 参考: Soo Ye Kim *,Jihyong Oh ...
海尔液晶电源背光板 0094001274E JSI-320411 原理图.pdf
HDT-JSI01
JSI Wikifier OpenAPI规范 JSI Wikifier API文档存储库。链接文档: : SwaggerUI: ://jsi-eubusinessgraph.github.io/jsi-wikifier-api/swagger-ui/ 看完整规格: JSON YAML 警告:仅当Travis CI完成部署后,以上...
轻量系统JS-UI框架子系统,是OpenHarmony为开发者提供的一套开发OpenHarmony应用的JS-UI框架,部署在轻量系统上,为应用提供UI开发能力。
自定义三种方式进度条,学会使用Canvas
eccl-jsi.github.io
Jsi是带有内置websocket-server,sqlite和C -extensibility的javascript -ish解释器。 | | | 快速开始下载适用于 / 的二进制文件: wget ...
react-native-multithreading using使用JSI的React Native的快速简便的多线程处理。 安装npm install react-native-multithreading npx pod-i react-native-...Why为什么自从JSI成为主流以来,可能会有一些功能
java程序推荐源码 ...然后添加一些矩形; 每个人都有一个ID。 final Rectangle[] rects = new Rectangle[100]; rects[0] = new Rectangle(0, 10, 0, 10); rects[1] = new Rectangle(0, 11, 1, 20); si.add
流冒险学习你的节点聊天室
javascript sfs多个关键字请用空格分隔,最多填写5个。点击右侧Tag快速添加
:thread: 使用JSI的React Native的快速简便的多线程处理。 安装 npm install react-native-multithreading npx pod-install 需要包括的react-native-reanimated版本。 您可以自己打补丁,也可以等到它发布后再...
jsi-初学者条件语句、for/forEach 循环和啤酒瓶。
通过React 5的MD5的JSI绑定,以极快的速度实现C ++实现。 确认它比在iPhone 11 Pro上使用快10倍,在Essential Phone上快8倍。 您可以在下查看基准测试。 安装 npm install react-native-quick-md5 用法 import { ...
正泰LQG-0.66型电流互感器PDF,
文件里面已弄了使用说明,转换比较全面,已经开发和测试。可用于后台的URL的路径使用,以及其它方面的一些转换使用,详情自己挖掘...