初尝Vue的Render函数以及冒泡

5,648次阅读
没有评论

共计 844 个字符,预计需要花费 3 分钟才能阅读完成。

用 Vue 已经蛮长时间的,不过都是做一些简单的东西,渲染一个数据,展示页面。

不知道怎么的,就像用 Vue 做点好玩的,就用 Vue 把 MSUI 重写一遍,做组件还是蛮好耍的。

其实并不知道怎么做一个框架的组件,感觉很大,也很复杂。

比如,怎么规划每个组件的文件结构、静态文件等,都是一些麻烦的事。

还好有 Github 这个东西,另外还有国内强大的开发团队,找了一个开源 Vue 组件库(element-ui),学习(抄袭)了一番。

很早就想做一套自己的组件库,但是,想到怎么做弹窗等复杂组件的时候,就懵逼了。虽然每个页面可以单独引用弹窗组件,但是,我更喜欢 this.$alert(‘ 标题 ’, ‘ 内容 ’) 这样的方式。无奈,只好暂时放一放。

看了 element-ui 的弹窗组件后,还是很有收获,但,还是有点懵逼。

为什么我又开始做了,其实是同事的一句话。他说,虽然现在很多组件都有了,但是,自己写一遍才更深的理解。

是的,如果不自己做一遍,我也不会用到 Render 函数。

第一次见到 Render 函数的时候,觉得,妈蛋,JSX。

内心是拒绝的,并不喜欢 JSX 这样的东西,比较喜欢 template 的方式,毕竟写的还是 html 和 css,给人亲切感。

在重写 MSUI 的时候,做 tabs 组件的时候,看到 element-ui 也有,于是就借鉴(抄袭)一下呗,按照 element-ui 等方式抄了一遍,在打包的时候出错了

return (<div class="ms-tabs">{tabs}</div>
 )

它不认识这个,哎哟,好痛,我要静静,翻了翻文档,好像这样写也没问题啊,在群里问了一下,LCY 提醒了一下,好像没有开始一个插件,去翻了 element-ui 的 package.json,果然,开发中依赖了那个库。重新配置了一下,打包又报错了,又少了一个插件,好吧,重新再来。OK,没问题了。

后来感觉对 Render 并没有那么反感了,可能是 Vue 的插件做了一些东西的缘故吧,抄起来还是蛮简单的。感觉又回到了拼接字符串的方式了。

沉沦这么久,终于有点活着的感觉了。

正文完
 0
评论(没有评论)
验证码