jigsaw
jigsaw copied to clipboard
Jigsaw七巧板 provides a set of web components based on Angular5/8/9+. The main purpose of Jigsaw is to help the application developers to construct complex & intensive interacting & user friendly web...
Change-Id: I89a7e15dbd5c34490a927ddfb42952d2fc010848 
Change-Id: I3273f32fad846cb07fa4a082a0c0cddd98569255 
效果如下  http://gitlab.zte.com.cn/10045812/jigsaw/issues/267
现状是Jigsaw的多数组件和功能,均面向PC端,几乎未考虑过移动端,经评估Jigsaw的大部分基础功能代码、指令和小部分组件实现,是可以用于移动端的,大部分的组件实现不能适用于移动端。 因此,Jigsaw对移动端的支持,将采用这样的方式: 1. 将可共用部分的代码,独立出来到一个common目录里去,大概包含如下目录 - jigsaw/core - jigsaw/directive - jigsaw/service - jigsaw/assets 2. jigsaw/components目录更名为jigsaw/pc-components,里头的文件不变,用于存放PC端的组件库 3. 增加jigsaw/mobile-components目录,用于存放移动端的组件库,并把jigsaw/components目录中可适用于移动端的那部分组件的源码,**拷贝**到这个目录下独立演进。 4. 打包方式:PC端与移动端独立打包,独立发版本。即现在的 @rdkmaster/jigsaw 包不变,专用于PC端,新增一个 @rdkmaster/jigsaw-mobile 包,专用于移动端。打包脚本需要做对应的改造。
graph内部的事件监听会导致angular产生变更检查。 通过在注册事件上添加`this._zone.runOutsideAngular`,还是会触发变更检查 ``` // 注册封装的echarts事件. private _registerEvent() { this._zone.runOutsideAngular(()=>{ this._eventArr.forEach(eventStr => { this._graph.off(eventStr); this._graph.on(eventStr, params => this._handleEvent(params, eventStr)); }) }) } ```
比如big table的滚动条计算 
