现在的位置:主页 > 新闻中心 > 焦点访谈 >

如何能让页面仔也能做出良性的前端组件?

发布时间:15-12-30 来源:发我我网 人浏览 字号:TT 作者:admin 打印

你看国内,甚至国外,有多少大公司会用 Vue.js和Reactjs来写代码。轻量级单页应用的用这些框架就可以, 大型交互应用不适合,新闻资讯类页面(少量交互)没有必要。你自己搞搞个人应用,折腾折腾还可以。
----

不要以为学了这些框架API就能升天,基础不好,里面代码依旧是一团糟。
发布于 2015-09-02 添加评论 感谢 
分享
 收藏  没有帮助  
举报
  作者保留权利
需要意识到的一点就是这些组件化的开发理念主要是针对单页应用的,也就是有复杂的数据、页面结构和交互逻辑的东西。组件的目的就是把整体的复杂性解构,分而治之,从而提高开发效率和可维护性。

对于静态页面为主,附加少量轻交互的项目来说,这种理念虽然也部分适用,但如果复杂度没有到那个程度,为了引入组件而引入并不一定会带来很明显的好处。
发布于 2015-08-29 6 条评论 感谢 
分享
 收藏  没有帮助  
举报
  作者保留权利
匿名用户
Jacob Wing知乎用户、知乎用户 等人赞同
首先摆正态度,不要叫别人页面仔
发布于 2015-08-28 4 条评论 感谢 
分享
 收藏  没有帮助  
举报
  作者保留权利
貘吃馍香,偶是傻逼
知乎用户、余泽江知乎用户 等人赞同
凑热闹
刚蹭了饭饭回来好开心
偶想回答下装个逼更开心下
结果读了几遍问题发现实在看不懂说的啥意思

只好揣测着来
问题核心是问怎么复用还是分而治之?
特别是在mvvm的大环境下?

mvvm没啥好说的
这玩意是在意不在形
意是说数据逻辑和交互逻辑
形是指界面形态
没见某个mvvm还得带着特定HTML结构加CSS才能跑的起来
偶感觉问的应该不是这个
这玩意或许只是比较热门那么一提罢了

结合复用还是分而治之这段来说
貌似是组件样式分合力度怎么掌握的事儿
然后我看 @徐飞 老板说web components 合 css scope 啥的
所以偶猜可能是说在 web components 大前提下 CSS 应该怎么分合的缘故吧
结合内两篇儿文
有说web资源渐进加载和组件啥的
让偶觉得应该是这样

那就按这个路数来胡扯点呗
从一般认识来看
组件的含义是由一组资源包装而成的整体
这个整体可以独立使用
也可以与其它资源包装成新的整体
应该是遵循开闭、里氏替换和迪米特原则的
CSS和HTML作为web组件的组成部分之一
理论上是要放置在组件资源包内
外界不能修改
只能与其它资源结合组成新对象的
所以结合 Shadow DOM 和 style 标签的 scope 属性
可以做到类似要求

如果这样对于CSS来说
每个组件的 HTML 结构内都要带有一份 local scope 的 CSS
它可以部分隔离外界样式的影响
这可能就是所说的分而治之

如此结合的组件实际上已经可以担任服务角色了
在服务端配置好组件包
页面用哪个直接下发哪个
活脱脱的组件服务化啊

至于复用
现实情况下只能抽离一部分内容到全局公共样式
并没有好方法

将来可能在CSS处理器帮助下可以做到
同样样式可能会生成到不同的 scope 中
实际上也做到了复用
虽然在生产环节上是冗余的
这种冗余
没准厂商会玩出style 的 src 属性外加 scope 属性才可以搞定
期待未来吧

帮我网

最后
至于说Bootstrap为啥还没变
肯定是因为现在时机不适合啊
新浏览器虽然可以搞点 web component 了
但还远没达到成熟
如果强行变更
复用那部分内容估计还是全局样式一堆
每个组件带点 local css
又不能进行服务端下发组件包
用的人到处考一坨夹带 style 的 html
画面太美了
发布于 2015-08-29 1 条评论 感谢 
分享
 收藏  没有帮助  
举报
  作者保留权利
余泽江,ThoughtWorks 的搬砖工。
知乎用户、知乎用户、SimplyY 等人赞同
@前面的部分答主以及后面可能出现的答主。。

题主是个前端大V。。很大的大V。。

没事真心不要乱答。。
编辑于 2015-08-29 1 条评论 感谢 
分享
 收藏  没有帮助  
举报
  作者保留权利
黎喵 赞同
对云龙的文章深有体会,同时不是很仔细的读了民工哥的文章。这两文章都从一个整体的角度去看待组件化,而题主疑问:"如何能更好的制作前端组件?",如果题主只负责css和html,要满足这两篇文章里的所谓组件,只能说挺难的。

不管是polymer,react,还是fis理念中提倡的组件,其实都是一个完整的功能体,其中不是紧紧把html,css,js这三种语言揉到一块这么简单。从目前前端的现状来看,组件化难点并不在语言本身,而是如何去组织,拼装这几种语言,组件应该已一种什么样的形式存在,如何达到提升组件开发的效率,组件的复用等等。

这里面很大成分不在html和css这边,而是在逻辑,数据,工具,或者一些所谓的『模式』上。比如react,直接玩jsx,杀鸡简直嗷嗷叫;css module 则从js角度去解决css的固有问题 。所以,组件化到今天,已经和工程化分不开了,已经不是单单写一个效果,一个小插件的事了~
编辑于 2015-08-30 添加评论 感谢 
分享
 收藏  没有帮助  
举报
  作者保留权利
知乎用户
 
我觉得页面仔是负责堆页面的,而前端工程师不仅负责页面的兼容性,框架搭建,技术选型,性能优化,开发模式等等,前端工程师的水很深
发布于 2015-08-31 添加评论 感谢 
分享
 收藏  没有帮助  
举报
  作者保留权利
葛袁军,数学专业学渣
 
我怎么感觉题主没有分清工作的职责呢?页面仔做好页面跟简单的交互不就行了吗?一个工程师才会想到说一个项目应该怎么设计,逻辑应该怎么搞吧?

如果一个页面仔有一颗工程师的心,自然会做页面的时候做好自己认为的最优的规划的

项目代码要重构,谁来指点一下我这个页面仔 

利益相关:正在进化的页面仔
扫一扫,更多惊喜等着您,网站全部优惠2000元
发我我网

做站资讯热线

15000161882

Copyright © 2010-2016 发我我网(小翔子酷酷网)官方网站
本站文字及图片内容版权归刘翔个人所有,任何单位及个人未经许可,不得擅自转载使用(上海) | 皖ICP备15010645号-1

在线创业留言申请: 姓名: 手机或座机: