现在的位置: 首页 > 综合 > 正文

Github、NodeJS使用心得

2017年12月06日 ⁄ 综合 ⁄ 共 1863字 ⁄ 字号 评论关闭

(1) Github

    Git是由Linus Torvalds(大爱的教父级人物……)发起的,GitHub由Chris Wanstrath、PJ Hyett和Tom Preston-Werner使用Ruby on Rails编写而成,以Git为核。不多介绍。下面主要是GitHub的使用。

    网上的guys总结的很到位了,把一些比较好的网址链接了过来,如下:

http://www.cnblogs.com/findingsea/archive/2012/08/27/2654549.html

http://teliute.org/mix/Tegit/index.html

http://gogojimmy.net/2012/01/17/how-to-use-git-1-git-basic/

http://blog.longwin.com.tw/2009/05/git-learn-initial-command-2009/

(Git指令集)

http://my.eoe.cn/iceskysl/archive/463.html

(Git指令集)

http://blog.csdn.net/code52/article/details/8807785

    origin(remote) 是 Repository 的版本尽量不要修改,master(branch) 是 local 端。注册的本地文件夹可任意修改。其他不说,尽情使用。

(2) NodeJS

    对BYVoid的NodeJS demo做了适当的修改,使可以在3.x.x以上高版本express框架下、Nodejs最新版上可运行。以下是几点说明:

    1> .json文件加入了 "connect-mongo": ">=0.1.7",以及"connect-flash": "0.1.1", 。前者在app.js中修改了其调用为var MongoStore = require('connect-mongo')(express); 。后者则是为了支持flash('foo', 'foo'),由于3.x.x以上的express不再支持flash();故而加入了特殊的库,并由app.use注册。具体的修改及新添加的代码请读者自行对比BYVoid源码。

    2> express.router在3.x.x中已删除,故失效。故路由控制仍由app.router注册,同时最后由routes(app);完成路由工作。

    3> app.dynamicHelpers在3.x.x中已删除,故失效。由res.locals.替代其功能。补了一段代码,具体修改请对比BYVoid源码。

    4> ejs的网页,由于不再支持<%- partial('X') %>这类调用,故把网页进行了独立。虽然违反了DRY原则,不过实在没有其他办法。

    以上是主要改动,其他细微的改动如3.x.x的express -e生成的框架就与BYVoid源码形势有很大出入,这是版本问题,没有办法,多看两遍就明白了。BYVoid的解释还是比较详细的,即使改动很大,细细看也都能懂。

(3) 修改版代码

    修改版代码已上传Github,地址:

https://github.com/PaladinTyrion/nodejs_BYVoid_demo

    使用方法如下:

    右下角download zip,解压后cd到解压路径。npm install进行配置安装,自动生成node_modules文件夹及子文件夹。特别提醒,若之前单独安装了最新版mongodb,也就是2.4.5。.json配置文件若更改其2.4.5为配置版本,npm install是无法识别的。需要再进行单独npm install mongodb。

    安装完成后cd到路径,在终端使用supervisor app.js或使用node app.js进行侦听。

    其他说明:

    该程序虽已完全畅通,仍有一点失误,不知源码是否也有该类问题。app.set('views', __dirname + '/views');的注册只能识别localhost:3000/XXX类型的路径名,post使用了‘/u/:user’,由于中间有路径/u/,解析后无法令user.ejs链接到css,使得页面效果无法完成。亲测使用/:user则可以识别public/css等。

    故而,最后,将/views路径下的前端页面中,链接调用由javascript/xxx.js或者css/xxx.css修改为/javascript/xxx.js与/css/xxx.css,即可寻址路径。

抱歉!评论已关闭.