Nodejs Meteor 非官方中文文档(翻译中)

Nodejs Meteor 非官方中文文档(翻译中)

由于离翻译完成要过一段时间,所以就没在别的社区发帖,而只选择了 Node.js 爱好者聚集的 cnodejs。:)

Meteor 非官方中文文档在线地址:http://d0cs.meteor.com/ (官方的文档是:http://docs.meteor.com/ ,所以我这地址名还蛮酷的~)

GitHub repo:https://github.com/alsotang/meteor

翻译正在进行中…如果要协作的话,麻烦先邮件我一声,免得跟其他人的工作重复。


如果你还不知道 Meteor 是什么的话,我介绍一下。它其实就是一个 Node.js 的框架,跟 Express 的身份差不多,只是 Meteor 干的事情要更多更杂。与 Meteor 类似的有 Derby.js 和 SocketStream 这两个框架,他们三个框架的特点都是为 realtime 的 web app 提供了许多便利。

Meteor 官方的 GitHub repo:https://github.com/meteor/meteor 官方的文档:http://docs.meteor.com/

我觉得 Meteor 是一个很有潜力的 Node.js 框架,为什么呢?

请先看这里:https://github.com/sinatra/sinatra ,注意 sinatra 的 star 数和 fork 数。

再来对比这里看看:https://github.com/meteor/meteor 。噢耶~完败 sinatra。


所以,如果你有时间的话,就来学学 meteor 吧,潜力股噢亲~

再说点我个人的想法,一些题外话:

我觉得确实如 Meteor 的文档所说,网站的搭建形式已经是 20 年前的了:客户端请求,网站根据参数渲染,然后返回客户端。现在技术都已经发展了那么久了,大部分网站还是这个模型,实在不应该。而 Meteor 希望让大家开发的时候把前后端的概念尽量模糊,比如在前端也可以操作数据库(当然是模拟的,但够逼真即可)之类的。Meteor 让服务端只需与客户端传送必要的 JSON 数据而非 HTML,并且通过架构模式的创新,你无需做太多工作即可达到这一目的。同时默认要『赠送』多客户端自动同步更新,也就是说客户端与服务器之间默认就存在 pub-sub 关系。

当然,以上这些都是 Meteor 介绍里面看的,至于是如何实现的,我也不清楚。

我也正在尝试 Meteor 中,到时候有心得的话,会及时跟大家分享的!


7 回复

Nodejs Meteor 非官方中文文档(翻译中)

由于离翻译完成要过一段时间,所以就没在别的社区发帖,而只选择了 Node.js 爱好者聚集的 cnodejs。:)

Meteor 非官方中文文档在线地址:http://d0cs.meteor.com/ (官方的文档是:http://docs.meteor.com/ ,所以我这地址名还蛮酷的~)

GitHub repo:https://github.com/alsotang/meteor

翻译正在进行中…如果要协作的话,麻烦先邮件我一声,免得跟其他人的工作重复。


如果你还不知道 Meteor 是什么的话,我介绍一下

它其实就是一个 Node.js 的框架,跟 Express 的身份差不多,只是 Meteor 干的事情要更多更杂。与 Meteor 类似的有 Derby.js 和 SocketStream 这两个框架,他们三个框架的特点都是为 real-time 的 web app 提供了许多便利。

Meteor 官方的 GitHub repo:https://github.com/meteor/meteor 官方的文档:http://docs.meteor.com/

我觉得 Meteor 是一个很有潜力的 Node.js 框架,为什么呢?

请先看这里:https://github.com/sinatra/sinatra,注意 sinatra 的 star 数和 fork 数。

再来对比这里看看:https://github.com/meteor/meteor。噢耶~完败 sinatra。


所以,如果你有时间的话,就来学学 meteor 吧,潜力股噢亲~

再说点我个人的想法,一些题外话:

我觉得确实如 Meteor 的文档所说,网站的搭建形式已经是 20 年前的了:客户端请求,网站根据参数渲染,然后返回客户端。现在技术都已经发展了那么久了,大部分网站还是这个模型,实在不应该。而 Meteor 希望让大家开发的时候把前后端的概念尽量模糊,比如在前端也可以操作数据库(当然是模拟的,但够逼真即可)之类的。

Meteor 让服务端只需与客户端传送必要的 JSON 数据而非 HTML,并且通过架构模式的创新,你无需做太多工作即可达到这一目的。同时默认要『赠送』多客户端自动同步更新,也就是说客户端与服务器之间默认就存在 pub-sub 关系。

当然,以上这些都是 Meteor 介绍里面看的,至于是如何实现的,我也不清楚。

我也正在尝试 Meteor 中,到时候有心得的话,会及时跟大家分享的!


示例代码

下面是一个简单的 Meteor 应用程序示例,展示如何创建一个实时更新的应用。

// server/main.js
import { Meteor } from 'meteor/meteor';
import { Mongo } from 'meteor/mongo';

export const Tasks = new Mongo.Collection('tasks');

if (Meteor.isServer) {
    Meteor.publish('tasks', function tasksPublication() {
        return Tasks.find();
    });
}

if (Meteor.isClient) {
    Meteor.subscribe('tasks');

    Template.body.helpers({
        tasks() {
            return Tasks.find({});
        }
    });

    Template.body.events({
        'submit .new-task'(event) {
            event.preventDefault();

            const target = event.target;
            const text = target.text.value;

            Tasks.insert({
                text,
                createdAt: new Date()
            });

            target.text.value = '';
        }
    });
}

在这个示例中,我们定义了一个 Tasks 集合,客户端可以订阅该集合并显示任务列表。当用户提交新的任务时,数据会被插入到集合中,并实时更新到所有客户端。

希望这些信息对你有帮助,如果有任何问题或需要进一步的解释,请随时提问!


meteor的中文资源还很少,非常高兴有人进行推广~!另外虽然关注度和开发者活跃度有些差距,但derby也是非常不错的.

楼主作为一个初学者…所以就倾向于去接受那些关注度比较高的技术,这样遇到问题比较好找答案…而且 Meteor 配服务器嘛。

挖个坟… 话说还有人继续关注meteor吗?

我表示已经放弃了。。

关于“Nodejs Meteor 非官方中文文档(翻译中)”这个帖子,内容已经非常详细地介绍了Meteor的基本信息以及它的一些潜在优势。为了帮助大家更好地理解和使用Meteor,我将提供一个简单的示例代码来展示如何使用Meteor创建一个基本的实时Web应用。

示例代码

首先,确保你已经安装了Meteor。可以通过以下命令进行安装:

curl https://install.meteor.com/ | sh

接下来,创建一个新的Meteor项目:

meteor create myapp
cd myapp

编辑myapp/client/main.html文件,添加一些HTML结构:

<head>
  <title>My App</title>
</head>

<body>
  <div id="content">
    {{> hello}}
  </div>
</body>

<template name="hello">
  <h1>Hello World!</h1>
  <input type="button" value="Click Me" />
</template>

编辑myapp/client/main.js文件,添加一些客户端逻辑:

Template.hello.events({
  'click input': function () {
    // 当按钮被点击时,显示一个提示
    alert("You've clicked the button!");
  }
});

最后运行你的应用:

meteor

打开浏览器访问http://localhost:3000,你应该能看到一个简单的页面,包含一个“Hello World!”标题和一个按钮。当你点击这个按钮时,会弹出一个提示框。

解释

  • 项目创建:使用meteor create命令快速创建一个Meteor项目。
  • HTML模板:定义了一个名为hello的模板,包含一个按钮。
  • 事件处理:使用Template.hello.events定义了按钮点击事件的处理函数。
  • 运行应用:使用meteor命令启动应用。

这个简单的例子展示了Meteor如何处理前端逻辑,并且实现了客户端与服务端之间的实时交互。希望这能帮助你更好地理解Meteor的基本用法。

回到顶部