最近在玩node.js

但是发现很多IDE就是用不顺手

后来发现Xcode可以剖析java script

于是试着使用Xcode来当做node.js的编辑器

首先,在Mac上必须先安装node.js的相关开发工具


MacPorts比较省时间 开发环境搞定后,打开Xcode

点选: 'File->New->Project'

IDE写node.js" title="使用Xcode IDE写node.js" style="margin: 0px; padding: 0px; border-width: 0px; list-style: none; background-color: transparent; vertical-align: baseline;">

然后选择左下角Other。右边选择External Build System

按下Next 会看到下图

IDE写node.js" title="使用Xcode IDE写node.js" style="margin: 0px; padding: 0px; border-width: 0px; list-style: none; background-color: transparent; vertical-align: baseline;">

Product Name: '自己取' Build Tool: '/usr/local/bin/node'

之后,随便找个地方按下Create,建立项目。

当项目建立好后,就可以新增档案了。

在这个地方,我将会把以前写的小东西汇入这个项目。

首先,先将以前写的东西搬到项目文件夹底下。

我是将以前写的.js文件搬到该项目文件夹底下的src目录

然后,依照下图进行.js档的reference汇入动作

IDE写node.js" title="使用Xcode IDE写node.js" style="margin: 0px; padding: 0px; border-width: 0px; list-style: none; background-color: transparent; vertical-align: baseline;">

在项目文件的图示右键单击,选择「Add Files to "MyNodeJS"」

然后把整包src文件夹汇入。如下图

IDE写node.js" title="使用Xcode IDE写node.js" style="margin: 0px; padding: 0px; border-width: 0px; list-style: none; background-color: transparent; vertical-align: baseline;">

以上步骤就完成了项目文件的结构设定。

但是,还不能跑。

以前用文字编辑软件写完code后,必须用terminal呼叫node去执行.js档

现在,必须在Xcode上面做一些设定,让Xcode可以直接呼叫node去执行.js檔。

并将结果显示在Xcode的console

IDE写node.js" title="使用Xcode IDE写node.js" style="margin: 0px; padding: 0px; border-width: 0px; list-style: none; background-color: transparent; vertical-align: baseline;">

点选: 'Product->Edit Scheme'

选择左边的Run

接着,在右边的info标签中有个Executable的下拉式选单

选择Other。

IDE写node.js" title="使用Xcode IDE写node.js" style="margin: 0px; padding: 0px; border-width: 0px; list-style: none; background-color: transparent; vertical-align: baseline;">

之后,会弹出一个选择档案的对话框。

这时候我们要把node的执行档指定给Xcode

IDE写node.js" title="使用Xcode IDE写node.js" style="margin: 0px; padding: 0px; border-width: 0px; list-style: none; background-color: transparent; vertical-align: baseline;">

按下: 'Command+Shift+G'

画面将会出现一个框框,如上图。

接着,key入node执行文件位置。如果是用Mac Ports安装的话,可直接按照下面方式操作。

键入: '/usr/local/bin/node'

IDE写node.js" title="使用Xcode IDE写node.js" style="margin: 0px; padding: 0px; border-width: 0px; list-style: none; background-color: transparent; vertical-align: baseline;">

按下Go后,发现node执行档已经被选取。此时按下Choose。

回到刚刚的画面

此时,我们必须将debugger换掉。

IDE写node.js" title="使用Xcode IDE写node.js" style="margin: 0px; padding: 0px; border-width: 0px; list-style: none; background-color: transparent; vertical-align: baseline;">

依上图操作。把debugger选择成None

现在已经完成了node.js的设定

也取消了debugger。所以已经快要可以run程序了

不过,还差一步…

我们必须跟IDE说,node一开始要加载什么档案。

这个范例的默认是加载index.js后开始执行

IDE写node.js" title="使用Xcode IDE写node.js" style="margin: 0px; padding: 0px; border-width: 0px; list-style: none; background-color: transparent; vertical-align: baseline;"> 依照上图设定。

选择: 'Arguments' 在Arguments Passed On Launch新增(+): '$(SOURCE_ROOT)/src/index.js' Expand Variables Based On: 'MyNodeJS'

接着,按下OK就设定完成了

最后输出可以了,但是log打印会是乱码:解决办法:

alias node 'NODE_NO_READLINE=1 node'

或者:

An alternative is to add this to your .emacs:

(setenv "NODE_NO_READLINE" "1")

使用Xcode IDE写node.js的更多相关文章

  1. [label][IDE] Develop Node.js Project With WebStorm

    WebStorm 是一个支持 Node.js,CoffeeScript, TypeScript, Dart, Jade, Sass, LESS and Stylus 这些最新 web 开发技术的集成开 ...

  2. Node.js开发Web后台服务

    一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...

  3. 深入浅出Node.js(上)

    (一):什么是Node.js Node.js从2009年诞生至今,已经发展了两年有余,其成长的速度有目共睹.从在github的访问量超过Rails,到去年底Node.jsS创始人Ryan Dalh加盟 ...

  4. Node.js学习笔记——Node.js开发Web后台服务

    一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...

  5. 使用Node.js+Socket.IO搭建WebSocket实时应用

    Web领域的实时推送技术,也被称作Realtime技术.这种技术要达到的目的是让用户不需要刷新浏览器就可以获得实时更新.它有着广泛的应用场景,比如在线聊天室.在线客服系统.评论系统.WebIM等. W ...

  6. Node.js入门学习笔记(一)

    先来个最常见的"Hello World!". 打开你最喜欢的编辑器(我用的是Sublime Text),创建一个helloWorld.js的文件.我们要做的就是向stdout输出& ...

  7. 深入浅出Node.js(一):什么是Node.js

    Node.js从2009年诞生至今,已经发展了两年有余,其成长的速度有目共睹.从在github的访问量超过Rails,到去年底Node.jsS创始人Ryan Dalh加盟Joyent获得企业资助,再到 ...

  8. (转)使用Node.js+Socket.IO搭建WebSocket实时应用

    Web领域的实时推送技术,也被称作Realtime技术.这种技术要达到的目的是让用户不需要刷新浏览器就可以获得实时更新.它有着广泛的应用场景,比如在线聊天室.在线客服系统.评论系统.WebIM等. W ...

  9. Node.js的线程和进程

    http://www.admin10000.com/document/4196.html 前言 很多Node.js初学者都会有这样的疑惑,Node.js到底是单线程的还是多线程的?通过本章的学习,能够 ...

随机推荐

  1. CF679C(Bear and Square Grid) 经典好题

    题目链接:传送门 题目大意:给你一个n*n包含".","X"的图,你有一次机会选择一个k*k的子矩阵,将子矩阵全部变为".",问当操作过后, ...

  2. poj3411

    Paid Roads Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6549   Accepted: 2427 Descri ...

  3. Logon Session Times

    How to Get User Logon Session Times from the Event Log To figure out user session time, you’ll first ...

  4. mysql 数据库备 及移动当天数据到历史表里 window下可用

    1 数据移动到历史表中,同时删除当天数据 test-move-record.bat c: cd C:\FQ_ManageServer\mysqlback mysql.exe -h 10.71.1.23 ...

  5. 12.php中无比坑爹的构造函数。

    当你在php类中,写一个构造方法时,记得,一定要用__这是两个下划线,而不是一个.......... <?php class Car { // function _construct() { / ...

  6. 第12章—整合Redis

    spring boot 系列学习记录:http://www.cnblogs.com/jinxiaohang/p/8111057.html 码云源码地址:https://gitee.com/jinxia ...

  7. 深入理解Java内存模型之系列篇

    深入理解Java内存模型(一)——基础 并发编程模型的分类 在并发编程中,我们需要处理两个关键问题:线程之间如何通信及线程之间如何同步(这里的线程是指并发执行的活动实体).通信是指线程之间以何种机制来 ...

  8. CentOS7保留默认Python版本并安装更新Python2和Python3共存

    CentOS 7 默认的python版本是python2.7.5.因为yum依赖于默认的python版本的缘由,所以要先保留默认版本,并修改yum文件头部后,才能开始安装更新python2和pytho ...

  9. 【我的Android进阶之旅】如何隐藏Android中EditText控件的默认下划线

    Android EditText控件是经常使用的控件,但是有时候我们并不需要它的一些默认的属性,比如说下划线,因为有时候这样的默认下划线看起来特别怪异,和其他控件在一起搭配的时候不协调,因此有时候就需 ...

  10. java正则匹配

    java正则提取需要用到Matcher类,下面给出案例示例供参考 需要提取车牌号中最后一个数字,比如说:苏A7865提取5,苏A876X提取6import java.util.regex.Matche ...