百度也整了个 MVVM 前端框架: San,它支持 ie6 !!!???!!!

2018-06-22 11:00:14 +08:00
 Terry05

首页: san

Github: san

以百度这样的体量,让团队开发个 MVVM 框架不奇怪,支持 ie6 让我有点震惊,这是要吃准了国情弯道超车!?

简单看了下,感就是照着 Vue 来做的

13139 次点击
所在节点    程序员
72 条回复
murmur
2018-06-22 12:18:53 +08:00
@morethansean 但是从钱的角度来说 做政府项目钱还不少。。人家未必比你 react 的工资低
ctsed
2018-06-22 12:21:27 +08:00
@murmur 上线前要有一些检测之类的审核,如果一次没过,后面单检测费就几万十几万
yamedie
2018-06-22 12:36:16 +08:00
兼容到 IE6, 代码势必要编译成 ES3 吧, 很多 1 行能解决的事怕不是要兜个大弯子才行, 效率堪忧.
ShineSmile
2018-06-22 12:54:21 +08:00
还有 7891011edge 需要兼容
麻烦百度的工程师再多努力一些
laobubu
2018-06-22 12:55:17 +08:00
打开项目网站,第一眼印象挺走心的,但是代码里一大堆的 .data.set() .data.get() 以及 .data.push('array1', xxx) 之类的看得脑阔疼。
如果可搞一个 babel 插件或者 TypeScript Transformer 把这些丑写法藏起来就好了
DOLLOR
2018-06-22 12:56:46 +08:00
@mars0prince
webpack 还真的可以,把 babel 换成 tsc,target 设为 ES3,再引入 es5、es6、es7、es8、es9 等等 polyfill😅
dong3580
2018-06-22 13:32:16 +08:00
@mars0prince
webpack 只是打包工具,兼容性考虑一些 css 和 js 的写法就行了。
jiqing
2018-06-22 14:03:00 +08:00
这些前端工具怎么用的,谁给解释一下。这个 san 很久之前就看到了,看不明白。我对前端的理解还仅仅局限在 bs 框架,引入 js 改 class 名。
k9982874
2018-06-22 14:17:25 +08:00
@laobubu #25 我是接受不了它的 template 定义成字符串,变量又直接定义在模板字符串中
sangmong
2018-06-22 14:18:49 +08:00
只要还有一个人在用 ie6,就会去兼容,这才叫大公司,你们这些弱鸡懂什么
jjplay
2018-06-22 14:27:26 +08:00
百度框架为什么不以 B 开头,叫做 Ban 多 nice https://www.v2ex.com/static/img/doge.gif
wangxiaoaer
2018-06-22 14:38:05 +08:00
@ctsed 咋一听好像很有道理,可惜不是那么回事儿。

就拿政府企业来说,已有 ie 68 的项目维护不可能引入这种框架。
新项目没有兼容的必要。
simple11
2018-06-22 15:19:30 +08:00
ctsed
2018-06-22 15:28:33 +08:00
@wangxiaoaer #32 谁告诉你不可能的?甲方技术部门都知道 ie68 上淘宝京东不好使,生产、办公、涉密用破电脑,人家自己买的 win10 本 mac 本啊;要么甲方提供框架环境,要么提供接口规格,合同里签了维护条款,你爱用 jquery 用 jquery,爱用 mvvm 用 mvvm ;战线长了什么项目没有,你随便找几家 2000 年到现在的老牌公司,哪怕本身就是 it 相关,oa crm 没做过迁移的,ie6~chrome60 全线通吃,不知打过多少补丁;啥?你说 vue react 才是现代框架?代表先进生产力?先不算像电力这样基础设施的系统,公司里 oa crm 不计成本全都停一周做迁移,只兼容新版 chrome safari firefox,你看你公司炸不炸;包袱之所以叫包袱,是因为重而不能丢。
winiex
2018-06-22 15:47:36 +08:00
作为 web 框架不去加速 IE6 的淘汰,是没有社区责任感的。
wlwood
2018-06-22 15:52:42 +08:00
真的兼容 ie6 么?

为何我用 ie 打开它的组件,都无法显示?

https://ecomfe.github.io/san-mui/#/components/AppBar
Lawlieti
2018-06-22 15:55:12 +08:00
造这么多轮子有意思吗?
overflowHidden
2018-06-22 16:20:28 +08:00
vue 语法糖加 react 函数式编程和 jsx,前阵子 facebook license 时间加上兼容性问题,百度造这么个框架很正常
leonlu
2018-06-22 16:35:29 +08:00
支持到 ie6,说得准确点应该是支持 ie678。这只是 san 的一个加分项而已。san 也是支持 chrome 等等现代浏览器的啊,大家不用过于担心。而且就算 san 支持了 ie678 这些老古董们,体积也只有 14KB,还是远小于 Vue/ React 的 。

虽然前端开发者们心理生理上都需要淘汰 ie678,但是我们也不得不承认仍然有一些站点『被迫』需要支持 ie678。目前根据 http://tongji.baidu.com/data/browser 给出的数据来看,ie78 就是 pc 流量的 10% 左右,ie6 基于上已经狗带了。这样来看,这些流量很可能也就是 pc 用户群体 /收入的 10%。直接放弃流量这种事情老板肯定是不乐见的,这时候说什么社区责任感什么都是 shit。无论是 Vue 还是 React,都没办法跑了,而用 san 至少你的 js/组件还能用啊!只是兼容一下 css,还省力不少的。

对于以移动流量 /『高端用户』为主目标用户人群的站点来讲,这个兼容 ie678 这个特性直接忽略就好了,功能 /易用性 /性能上也都不会差。如果讲性能,浏览器渲染也好,服务端预渲染也罢,san 也是遥遥领先。https://baidu.github.io/san/ 大家可以自己看。
wangxiaoaer
2018-06-22 16:36:08 +08:00
@ctsed 我们给 j 区政府做的项目多了,10 年开始就强推 ie9 chrome.

现在的项目根本不考虑 Ie .

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/464960

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX