基于 React.js 的 RubyChina 示例 及 Vue.js 的 V2EX 示例 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
rinaliuzhen
V2EX    分享创造

基于 React.js 的 RubyChina 示例 及 Vue.js 的 V2EX 示例

  •  3
     
  •   rinaliuzhen 2016-10-11 18:12:06 +08:00 3497 次点击
    这是一个创建于 3291 天前的主题,其中的信息可能已经有所发展或是发生改变。

    抱歉之前那篇弄错了节点, 想换又不能修改, 请包涵.

    最近在学习前端的各大流行框架, 主要学习了 Vue.js 和 React.js, 前段时间用 Vue.js + uikit 实现了 V2EX 的克隆版本, 最近又用 React.js + redux + bootstrap 实现了 RubyChina 的克隆版本, 两个项目都支持响应式布局. 不得不说这是学习新知识的一个有效途径. 这两个项目都比较合适学习 Vue.js 和 React.js 的朋友参考.

    Vue.js + V2EX 项目

    代码地址: https://github.com/liuzhenangel/v2ex_frontend

    Demo: http://v2ex.liuzhen.me

    关于这个项目的一些介绍和学习资料可以访问 这里 查看 .

    v2ex.png

    这篇文章主要介绍 React.js 的相关知识.

    React.js + RubyChina 项目

    代码地址: https://github.com/liuzhenangel/react-ruby-china

    Demo: http://ruby-china.liuzhen.me

    v2ex.png

    项目介绍

    react-ruby-china 项目是一个利用 react, react-dom, react-redux, react-router, redux, es6, redux-thunk 实现的 RubyChina 社区克隆项目.

    这是一个前后端分离项目, 前端主要是 react, redux, es6, css 框架使用了 bootstrap. 后端利用 ruby-china 开放的 api. 支持响应式布局. 部分功能仍在持续完善中.

    开发环境搭建

    可以根据下方列出的官方文档里面有详细说明, 这里介绍一下 create-react-app 这个命令行脚手架工具. npm install create-react-app -g 之后执行 create-react-app my-app, 然后 npm start 就能运行了. 关于 create-react-app 详情可以点击 这里 查看.

    核心技术框架
    • react
    • react-dom
    • react-router
    • redux
    • redux-thunk
    • react-md-editor
    • isomorphic-fetch
    • react-paginate
    • react-redux
    • marked
    • es6-promise
    • classnames

    学习参考资料

    在学习 React 过程中, React.js 文档做的没有 Vue.js 的好, 文档中的例子各种不同语法. 对着照做不一定对, 也不方便查询, 踩过很多坑后给大家做个分享.

    React 中文文档(这个文档很好查询, 但是很多内容写的太简单了没讲清楚, 而且内容不全): https://hulufei.gitbooks.io/react-tutorial/content/index.html

    React 官方英文文档: https://facebook.github.io/react/docs/getting-started.html

    React 中文文档(这个文档比较差): http://reactjs.cn/react/docs/getting-started-zh-CN.html

    极客学院提供的 React 中文文档: http://wiki.jikexueyuan.com/project/react/

    另一个 Reac 中文文档(这个比较全面, 但是不便于搜索): http://www.phperz.com/article/15/0712/140537.html

    React Router 中文文档: https://react-guide.github.io/react-router-cn/

    RubyChina API: https://ruby-china.org/api

    ReacChina 社区(这里面有很多资源): http://react-china.org/

    ES6 文档: http://es6.ruanyifeng.com/#docs/intro

    Redux 介绍: http://www.alloyteam.com/2015/09/react-redux/

    17 条回复    2016-10-13 16:10:05 +08:00
    IamJ
        1
    IamJ  
       2016-10-11 18:45:22 +08:00 via iPhone
    收藏,准备搞一下 react
    SuperMild
        2
    SuperMild  
       2016-10-11 19:25:07 +08:00 via iPad
    楼主对这两种技术有什么看法,更喜欢哪个?
    rinaliuzhen
        3
    rinaliuzhen  
    OP
       2016-10-11 19:43:56 +08:00
    @SuperMild 我自己更喜欢用 Vue.js 开发, 至于具体的对比可以看一下这篇文章: https://www.zhihu.com/question/39943474?from=timeline&isappinstalled=0 写的特别好.
    Clarencep
        4
    Clarencep  
       2016-10-12 09:13:10 +08:00
    Mark~

    不过首屏打开速度好慢的说
    corona
        5
    corona  
       2016-10-12 09:14:33 +08:00
    最近入坑 React
    rinaliuzhen
        6
    rinaliuzhen  
    OP
       2016-10-12 10:09:45 +08:00
    @Clarencep 单页应用首次打开会慢一点, 加载完点其他链接就会很快.
    rinaliuzhen
        7
    rinaliuzhen  
    OP
       2016-10-12 10:10:10 +08:00
    @corona
    Clarencep
        8
    Clarencep  
       2016-10-12 12:28:25 +08:00
    @rinaliuzhen 可以考虑加个服务端渲染, vuejs 和 react 好像都支持服务端渲染的吧
    rinaliuzhen
        9
    rinaliuzhen  
    OP
       2016-10-12 12:47:00 +08:00
    @Clarencep 好建议
    TomIsion
        10
    TomIsion  
       2016-10-12 17:54:10 +08:00
    TomIsion
        11
    TomIsion  
       2016-10-12 17:55:31 +08:00
    @rinaliuzhen

    无视上面的消息 最近学习 React.js 全家桶
    也想撸个高仿的 V 站出来 样式什么的怎么弄的?
    不想浪费时间在这些东西上~
    rinaliuzhen
        12
    rinaliuzhen  
    OP
       2016-10-12 23:25:57 +08:00
    @TomIsion 你可以用 bootstrap 啊, 新知识总是要花时间的, 不花时间又怎么能做好呢.
    TomIsion
        13
    TomIsion  
       2016-10-13 08:29:59 +08:00
    TomIsion
        14
    TomIsion  
       2016-10-13 08:30:40 +08:00
    @rinaliuzhen 楼主撸个基于 Vue.js 的 V 站大概花了多久哈?
    rinaliuzhen
        15
    rinaliuzhen  
    OP
       2016-10-13 12:06:21 +08:00   1
    @TomIsion 1 个星期.
    terryops
        16
    terryops  
       2016-10-13 12:15:07 +08:00
    Wow, damn cool!
    This is much faster!
    TomIsion
        17
    TomIsion  
       2016-10-13 16:10:05 +08:00
    @rinaliuzhen 了解~ 铜币献上~
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     913 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 19:59 PVG 03:59 LAX 12:59 JFK 15:59
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86