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

2012-04-28 13:25:55 +08:00
 chuangbo
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
11021 次点击
所在节点    Meteor
30 条回复
iwege
2012-04-28 13:27:04 +08:00
给铜币。
wong2
2012-04-28 13:31:57 +08:00
感谢楼主
zhendi
2012-04-28 13:34:38 +08:00
楼主你可以提交到这里: http://madewith.meteor.com/
ksword
2012-04-28 14:27:44 +08:00
右边实时预览很赞
kokdemo
2012-04-28 14:41:18 +08:00
好东西,给铜币
Kenyth
2012-04-28 15:15:42 +08:00
赞,写的真的不错:)
chuangbo
2012-04-28 21:27:50 +08:00
kojp
2012-04-28 21:30:34 +08:00
我也是来给铜币的。。。
Livid
2012-04-28 21:34:19 +08:00
赞,如果要在目前加入登录和权限分级控制,你的思路会是怎样的呢?
huyipeng
2012-04-28 21:44:29 +08:00
必须给铜币啊!!!
raecoo
2012-04-28 21:47:51 +08:00
效果真是相当的震撼, 感谢楼主分享实例
leecade
2012-04-28 22:56:14 +08:00
@chuangbo 开源吧

藉此开始学习Meteor
xinkiang
2012-04-28 23:31:29 +08:00
cool ! 给楼主加铜币
quix
2012-04-29 23:38:33 +08:00
很有意思的东西, 已经在尝试了 , 目前感觉最大的问题还是安全问题
j
2012-04-30 00:11:53 +08:00
@Livid meteor团队正在开发用户权限的部分,github里有一个分支可以看到。

没人对live html(自动重渲染)的行为表示诡异么,就好比模版上的一个变量一直在自更新啊,这在其他前端环境下,简直是低级错误啊。在这个环境下倒成了捷径。
chuangbo
2012-05-02 08:28:57 +08:00
@j @Livid 看到官方 twitter 转推了这篇文章
http://britto.co/blog/security_with_meteor
loddit
2012-06-24 00:49:46 +08:00
来给铜币
liliang13
2012-08-25 23:53:06 +08:00
还要铜币么。。。。。
iloveyou
2012-08-26 11:09:58 +08:00
seo怎么做
iwinux
2012-08-26 22:26:56 +08:00
我彻底的 out 了,最近才听说这个东西,而这个帖子居然是 4 个月前的……

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

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

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

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

© 2021 V2EX