CntChen

Results 18 comments of CntChen

哈 因为是提交到服务器进行后台渲染 而服务器是国外的单核512M内存的虚拟机 后续可能买台国内的云服务器 本地部署或内网部署很快的 @wufenfen

**自动生成配置表单** 1. 表单项间的关联没做处理过. 比较期望的情况是配置项之间是正交的, 不会相互关联. 一些关联感觉可以在组件内维护关系, 不在配置项上维护. 比如姓名的姓氏和名字, 可以有两个配置项, 但其关系在组件内维护. 另一种情况, 数据就是有关联, 配置项A的输入影响配置项B的合法输入. 这种用JSON Schema 比较难覆盖, 不过 JSON Schema 支持多选一的配置项, 就是整个配置数据可以在多个数据结构中选一个. 2. 表单项的异步数据获得是请求网络数据作为表单项吗,比如获取一个优惠券id, 然后填入表单中? 如果是这种场景, 很好做的, JSON Editor 会暴露表单的修改方法, 用一个浮层去加载需要的配置项值,...

@GangRock 好问题. 1. 组件库是可以公用一个组件库的. 但是不同的业务页面需要多个模板, 抽出组件库后会维护稍微复杂一点. pipeline 最初就是组件库和页面模板分离的, 页面模板里面放组件列表, 没有组件源码. 公用组件库的好处是组件库升级, 所有页面模板都用到最新的组件库. 不好的点在于, 组件库升级后, 一些页面模板引用的组件可能还是旧的, 就无法再次编辑了. 2. 编辑器已经是和前端框架无关了, 也是用 vue 开发的. 为了实现 react 的 SSR 依赖了 React, 但是不影响单纯用 vue 的场景....

@stormqx 你们已经做得很深入了啊. 1. 这个点超出我的了解的范围, 倒是可以尝试一下. 2. 应该是可以加的, 只要在配置数据提交前, 可以插入数据获取和填入等操作. 关键是设计插入点. 3. weex不了解, 可以验证一下. 如果是内部服务的话, 请求量级应该还可以接受.

页面渲染的思路也是可以的. 就是会让编辑器和框架耦合, 用了Vue, 就没法切 React 等. 用后台渲染的话, 可以做到编辑器和前端框架无关, 可以支持非Vue的页面.

> 看过你前天在AlloyTeam 发的文章,很受益。有2点疑问: > 1.用页面挂载的方式实现即时预览,为什么会污染编辑器界面?我用的react 实现的可视化编辑,预览的时候直接把组件树还原成组件渲染。用一个渲染路由挂载一个我的渲染数据,好像没发现有污染的问题,不知道是不是技术框架的区别? > 2.你的页面里的业务逻辑怎么实现的?比如组件A里一个事件钩子需要操作组件B的一个Props属性,也就是数据流的控制了。虽然可以预先设想一些可能的业务逻辑,这种业务逻辑是千变万化的,不可能完全枚举。我做的就是把事件钩子渲染出来,让用户手动编码写自己的业务逻辑 > > 我当前也在做可视化编辑工具,定位是用编辑器生成页面级别的组件聚合成的区块,用数据描述页面,最终用浏览器生成一个React.jsx 文件下载。放在工程目录里就可以直接渲染了。希望有机会能跟你交流下 不好意思, 最近有点忙, 回复晚了. 1. 页面挂载的主要缺点是编辑器和组件库耦合, 编辑器和组件库前端框架耦合. 样式污染问题可能会发生, 应该是小概率场景. 比如没有用 css scope, 并且给某个基础 css 选择器写了样式, 那这个 css 样式对编辑器页面也是生效的. 不过我没有实际实验这样的场景....

@JoyZ1122 我没有在 windows 跑过, 在 mac 上是 OK 的. 可能一些 npm 的包没有兼容, 或终端问题, 或 docker 问题, 这些问题可以看下具体 case, 查阅文档解决.

可以, 可视化编辑这里只做一件事情: 修改页面的组件列表和传给组件的数据. 比如: [config/components](https://github.com/page-pipepline/pipeline-template/blob/master/src/config/components.json) 可以拿到搭建后的项目的源码, 自行进行修改; 不过这种修改可能就不是很深度, "魔改"有一些限制. @raozerui

墨刀之前也体验过,很不错 👍.