Meteor Official Site
› http://www.meteor.com/
› Follow @meteorjs on Twitter
chuangbo
V2EX  ›  Meteor

「Meteor 开发体验分享」用 Meteor 做了一个文档管理工具

  •  
  •   chuangbo · Apr 28, 2012 · 12521 views
    This topic created in 5309 days ago, the information mentioned may be changed or developed.
    http://dnspod-docs.meteor.com/

    被难以置信的开发方式震惊了,于是花了一整天的时间,实践 Meteor,完成了一个内部共享管理文档的工具。
    粗劣模仿了 Mou.app(双栏实时预览、Github 样式) 以及 nvAlt(Tag),还有 Meteor 的 Todos Demo。

    重点是分享一下开发体验

    # Meteor 开发体验
    _本文基于 2012-04-28 0.3.3 Preview 版本_


    ## 特点

    下面不是对官方文档的翻译,是来自我亲身经验。

    用最通俗的话来说,Meteor 是一个一站式框架,本身基于 Node.js Mongodb Handlebar Underscore Backbone,但是用的时候完全不用关心,封装的很彻底。

    我觉得他完全是新一代的 Web 开发体验,比 Restful + Backbone 的思想更进了一步。我猜测,Google Wave、Asana 这些私酿框架应该也是这个思路。

    ### 数据实时同步
    Meteor create 默认创建的项目包含 autopublish 模块,当 Mongo 数据库的数据发生变化时,会推送到所有的客户端,进行「模板自动重渲染」

    ### 模版自动重渲染(Reactive)
    渲染模板的「数据库数据」发生变化,模板自动重新渲染。这与「数据实时同步」结合,就实现了「实时」功能。

    ### 没有服务端代码
    应该加上「几乎」。浏览器可以直接操作 Mongodb,加上「数据实时同步」,服务端只需要做 publish 就 OK 了。

    ### 代码发生改变浏览器自动重载
    不论是开发环境还是生产环境,一旦任何 HTML、Template、CSS、JS 发生改变,客户端浏览器会自动 reload,并在 reload 前自动保存当前 Session,reload 后读出。给用户的感觉就是,看到页面刷新了,但是所有操作都还在。

    ### 浏览器直接操作 Model/DB
    对我来说,这是最好的 Admin Console


    ## 目前的缺点
    目前(_0.3.3_)缺点太多,只适合自己玩玩,写出来的代码没有想象中优雅。下面这些缺点,都是官方文档中用红字标明计划完成的。

    ### 浏览器直接操作 Model/DB
    不解释

    ### 模板的 events 无法引用渲染的数据
    在模板里,你找不到渲染模板的对象……所以一堆可恶的 Hack 不可避免的出现了。

    ### 事件流
    由于模板各种自动重渲染,再加上 Backbone Router,事件流变得难以控制,难以调试。

    - - -


    _看着别人的修改在自己的浏览器上闪动,确实是很有成就感的事情。_

    开发体验如果有更新,在 http://dnspod-docs.meteor.com/#Meteor/开发体验 可以看到。

    请大家凶猛的回复吧,我需要铜币。。。゚゚(´O`)°゚

    @chuangbo
    30 replies  •  1970-01-01 08:00:00 +08:00
    iwege
    iwege
    Apr 28, 2012
    1
    给铜币。
    wong2
    wong2
    Apr 28, 2012
    2
    感谢楼主
    zhendi
    zhendi
    Apr 28, 2012
    3
    楼主你可以提交到这里: http://madewith.meteor.com/
    ksword
    ksword
    Apr 28, 2012
    4
    右边实时预览很赞
    kokdemo
    kokdemo
    Apr 28, 2012
    5
    好东西,给铜币
    Kenyth
    Kenyth
    Apr 28, 2012
    6
    赞,写的真的不错:)
    chuangbo
    chuangbo
    OP
    Apr 28, 2012❤️1
    7
    kojp
    kojp
    Apr 28, 2012
    8
    我也是来给铜币的。。。
    Livid
    Livid
    MOD
    PRO
    Apr 28, 2012
    9
    赞,如果要在目前加入登录和权限分级控制,你的思路会是怎样的呢?
    huyipeng
    huyipeng
    Apr 28, 2012
    10
    必须给铜币啊!!!
    raecoo
    raecoo
    Apr 28, 2012
    11
    效果真是相当的震撼, 感谢楼主分享实例
    leecade
    leecade
    Apr 28, 2012
    12
    @chuangbo 开源吧

    藉此开始学习Meteor
    xinkiang
    xinkiang
    Apr 28, 2012
    13
    cool ! 给楼主加铜币
    quix
    quix
    Apr 29, 2012
    14
    很有意思的东西, 已经在尝试了 , 目前感觉最大的问题还是安全问题
    j
    j
    Apr 30, 2012❤️1
    15
    @Livid meteor团队正在开发用户权限的部分,github里有一个分支可以看到。

    没人对live html(自动重渲染)的行为表示诡异么,就好比模版上的一个变量一直在自更新啊,这在其他前端环境下,简直是低级错误啊。在这个环境下倒成了捷径。
    chuangbo
    chuangbo
    OP
    May 2, 2012❤️1
    16
    @j @Livid 看到官方 twitter 转推了这篇文章
    http://britto.co/blog/security_with_meteor
    loddit
    loddit
    Jun 24, 2012
    17
    来给铜币
    liliang13
    liliang13
    PRO
    Aug 25, 2012
    18
    还要铜币么。。。。。
    iloveyou
    iloveyou
    Aug 26, 2012
    19
    seo怎么做
    iwinux
    iwinux
    Aug 26, 2012
    20
    我彻底的 out 了,最近才听说这个东西,而这个帖子居然是 4 个月前的……
    ivanlw
    ivanlw
    Aug 27, 2012
    21
    MarshallChen
    MarshallChen
    Aug 27, 2012
    22
    Thanks!
    chuangbo
    chuangbo
    OP
    Aug 28, 2012❤️1
    23
    @iloveyou Meteor 0.3.9 新增了一个模块用来临时解决这个问题,据说 Meteor.com 使用了这个新的模块以后,在各大搜索引擎搜索 meteor 都会是第一名了。

    http://docs.meteor.com/#spiderable

    这个模块依赖的 phantomjs,也是一个非常好玩的东西。
    chuangbo
    chuangbo
    OP
    Aug 28, 2012
    24
    @iwinux 这个项目在一个月前获得了 1120 万美元的投资,已经来势汹汹了
    kiancyc
    kiancyc
    Oct 19, 2012
    25
    @chuangbo 有啥Meteor的学习资料可以分享吗?
    chuangbo
    chuangbo
    OP
    Oct 22, 2012
    26
    @kiancyc 中文的吗?没有,看文档吧。《程序员》约了我一篇 Meteor 的介绍,我已经拖了5个月了。。
    cshcool
    cshcool
    Oct 22, 2012
    27
    @ivanlw 好东西啊,只不过我现在用不上。。
    yetone
    yetone
    Oct 22, 2012
    28
    @chuangbo 求资料,求经验,求教程。
    chuangbo
    chuangbo
    OP
    Oct 22, 2012
    29
    @yetone 该项目的代码在 https://github.com/chuangbo/dnspod-docs ,这是我5个月前的第一个 Meteor 项目,代码质量非常差,不建议学习。
    zzcflying
    zzcflying
    Oct 22, 2012
    30
    竟然是五个月前的。。。果然out了。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2340 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 62ms · UTC 12:47 · PVG 20:47 · LAX 04:47 · JFK 07:47
    ♥ Do have faith in what you're doing.