mojito 发音是「Mohito」,它是 Yahoo! 团队开发的 node.js MVC Framework,底层还是使用 v8 engine 与 node.js,内建有多国语系、MVC、Detect Device 等等功能,mojito 本身使用 YUI3 的方式来开发,所以语法上,写起来就跟 YUI3 没什么两样,如果你是 YUI3 爱用者的话,上手应该是非常的快,可惜我不是YUI爱用者呀!!!,使用 mojito 就等於是由 Yahoo 帮你维护一套 node.js library,加快你开发的时间,现在我们就开始安装吧。
mojito 基本安装
安装 mojito 前,请先确定你的电脑已经安装 node.js ,若是还没安装,请先参考「node.js 安装方式」。
mojito 已经整合到 node.js 的 npm 工具里,所以我们得先安装 npm ,然后再透过npm 安装 mojito ,第一步就是在 Linux 中执行下列的指令。
curl http://npmjs.org/install.sh | sh
当你执行这个指令的时候,应该会看到一堆 error ,错误讯息「 Error: EACCES」 ,这是因为你没有 sudo 的权限,所以我们只好加 sudo ,使用 root 的权限。
curl http://npmjs.org/install.sh | sudo sh
当你执行这句指令的时候,你可能又会碰到「cannot found /usr/bin/node」之类的错误讯息。
! 解决方式 1 : sudo ln -s /usr/local/bin/node /usr/bin/node ,因为我把 node js 装到 /usr/local/ ,而 root 这个帐号并没有将 /usr/local/ 的 command 设定为预设路径,所以我只好建一个 symbolic link 连过去,最后再重新跑一次上个指令,就可以安装 npm 成功了。npm 预设安装的路径: /usr/lib/node_modules/npm
成功的安装 npm 之后,接下来就是安装 Yahoo! 的 mojito 软体,安装方式也很简单,执行下列的语法就行了。
npm install mojito -g
最后! 我们要测试一下 mojito 是否安装成功,可以执行下列的指令,若是没有错误讯息,就是安装成功了。
mojito test
mojito 预设安装的路径在 /usr/lib/node_modules/mojito ,这里有一堆 mojito 相关的 library ,有兴趣的人就自已打开来看吧。
使用 mojito 制作我的第一个 mojito 网页
mojito 的网页架构是,第一层先是一个 app,而每一个 app 又可以有多个 mojit ,mojit 你也可以把它简单的想成是一个小型的 module,或是把它当成一个页面(page) ,你可以藉由各种不同的 module ,去组成你想要的 Web 页面。
如上图,假设我想要写一个 聊天室的 APP,其中可能会包含 首页,聊天房,加好友,登入页,注册页等大大小小不同的页面,这时每一个 mojit(module) 我就可以把它当成是一个页面来制做。
! mojito 底下有很多个 mojit ,这里要注意的确少一个「o」。测试 mojito ,首先第一步我们先建立一个 app ,我将新建的 app 命名为 test_app
mojito create app test_app
这时你就会看到 test_app/mojits,test_app/assets 等目录,因为 mojit(module) 会有多个,所以命名上变成 mojits。
第二步,进入 test_app的路径,然后我们建立一个 mojit ,这里我就命名为 test_module
cd test_app mojito create mojit test_module
这样预设的网页就已经完成了,接著我们要启动 mojito web server,在 test_app的目路下执行下列的指令。
mojito start
试著使用浏览器,连结这个网址: http://localhost:8666/@test_module/index ,预设 mojito 是使用 port 8666。
一切正常的话,你就可以看到上面这个页面,index 是每一个 module 预设给的页面,而 test_module 就是我刚刚所建立的新 module,@test_module 是 mojito 提供的一个简捷呼叫 module 的方式,最好的方式还是必需透过 route 的方式,指定某个 url 对应的 module 名称 ,而 route 的部分我就留到下一篇文章啦...请期待!
Mojito 更改 Port
Mojito 预设使用 8666 port ,想要更改的话,可以直接使用 command ,只要在 mojito start 的后面加上 port 的数字即可,如果 port 小於1024的话,必须要有 root 的权限,就记得要加上 「sudo」。
mojito start 8080
相关资料
- http://developer.yahoo.com/cocktails/mojito/docs/ : Yahoo! 官方 Mojito 文件
- http://developer.yahoo.com/forum/Yahoo-Mojito/ Mojito 讨论区
- v8 engine