使用Xcode IDE写node.js
最近在玩node.js
但是发现很多IDE就是用不顺手
后来发现Xcode可以剖析java script
于是试着使用Xcode来当做node.js的编辑器
首先,在Mac上必须先安装node.js的相关开发工具
用
MacPorts比较省时间 开发环境搞定后,打开Xcode
点选: 'File->New->Project'
然后选择左下角Other。右边选择External Build System
按下Next 会看到下图
Product Name: '自己取' Build Tool: '/usr/local/bin/node'
之后,随便找个地方按下Create,建立项目。
当项目建立好后,就可以新增档案了。
在这个地方,我将会把以前写的小东西汇入这个项目。
首先,先将以前写的东西搬到项目文件夹底下。
我是将以前写的.js文件搬到该项目文件夹底下的src目录
然后,依照下图进行.js档的reference汇入动作
在项目文件的图示右键单击,选择「Add Files to "MyNodeJS"」
然后把整包src文件夹汇入。如下图
以上步骤就完成了项目文件的结构设定。
但是,还不能跑。
以前用文字编辑软件写完code后,必须用terminal呼叫node去执行.js档
现在,必须在Xcode上面做一些设定,让Xcode可以直接呼叫node去执行.js檔。
并将结果显示在Xcode的console
点选: 'Product->Edit Scheme'
选择左边的Run
接着,在右边的info标签中有个Executable的下拉式选单
选择Other。
之后,会弹出一个选择档案的对话框。
这时候我们要把node的执行档指定给Xcode
按下: 'Command+Shift+G'
画面将会出现一个框框,如上图。
接着,key入node执行文件位置。如果是用Mac Ports安装的话,可直接按照下面方式操作。
键入: '/usr/local/bin/node'
按下Go后,发现node执行档已经被选取。此时按下Choose。
回到刚刚的画面
此时,我们必须将debugger换掉。
依上图操作。把debugger选择成None
现在已经完成了node.js的设定
也取消了debugger。所以已经快要可以run程序了
不过,还差一步…
我们必须跟IDE说,node一开始要加载什么档案。
这个范例的默认是加载index.js后开始执行
选择: '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的更多相关文章
- [label][IDE] Develop Node.js Project With WebStorm
WebStorm 是一个支持 Node.js,CoffeeScript, TypeScript, Dart, Jade, Sass, LESS and Stylus 这些最新 web 开发技术的集成开 ...
- Node.js开发Web后台服务
一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...
- 深入浅出Node.js(上)
(一):什么是Node.js Node.js从2009年诞生至今,已经发展了两年有余,其成长的速度有目共睹.从在github的访问量超过Rails,到去年底Node.jsS创始人Ryan Dalh加盟 ...
- Node.js学习笔记——Node.js开发Web后台服务
一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...
- 使用Node.js+Socket.IO搭建WebSocket实时应用
Web领域的实时推送技术,也被称作Realtime技术.这种技术要达到的目的是让用户不需要刷新浏览器就可以获得实时更新.它有着广泛的应用场景,比如在线聊天室.在线客服系统.评论系统.WebIM等. W ...
- Node.js入门学习笔记(一)
先来个最常见的"Hello World!". 打开你最喜欢的编辑器(我用的是Sublime Text),创建一个helloWorld.js的文件.我们要做的就是向stdout输出& ...
- 深入浅出Node.js(一):什么是Node.js
Node.js从2009年诞生至今,已经发展了两年有余,其成长的速度有目共睹.从在github的访问量超过Rails,到去年底Node.jsS创始人Ryan Dalh加盟Joyent获得企业资助,再到 ...
- (转)使用Node.js+Socket.IO搭建WebSocket实时应用
Web领域的实时推送技术,也被称作Realtime技术.这种技术要达到的目的是让用户不需要刷新浏览器就可以获得实时更新.它有着广泛的应用场景,比如在线聊天室.在线客服系统.评论系统.WebIM等. W ...
- Node.js的线程和进程
http://www.admin10000.com/document/4196.html 前言 很多Node.js初学者都会有这样的疑惑,Node.js到底是单线程的还是多线程的?通过本章的学习,能够 ...
随机推荐
- Jmeter--BeanShell使用
博客首页:http://www.cnblogs.com/fqfanqi/ (一)BeanShell简介 BeanShell是一个小型嵌入式Java源代码解释器,具有对象脚本语言特性,能够动态地执行标准 ...
- PAT 甲级 1003Emergency(Dijkstra最短路)
1003. Emergency (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 16000 B 判题程序 Standard 作者 CHEN, Yue As an emerg ...
- ini_set('date.timezone','Asia/Shanghai');
w 同样的代码,不一样的php ENV.
- js身份证号有效性验证
1.简述 最近做的系统有用到实名验证的,起初对于用户身份证号只是简单地使用正则表达式进行验证, 很多无效的身份证号就成了漏网之鱼. 导致后台存表里很多无效的身份证号,随便输入用户名和身份证号就可以实名 ...
- 聚合的安全类导航、专业的安全知识学习平台——By Me:)
以“基于对抗的安全研发”为初衷,让大家在工作中始终有安全意识.安全思维和安全习惯,几年前自己搭建了面向公司内部全员的安全晨报.现在站在“用户“的角度回头看看,觉得科目设计等很多方面都还有很多的不足: ...
- An operation on a socket could not be performed because the system lacked sufficient buffer space or because a queue was full.
与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器.请验证实例名称是否正确并且 SQL Server 已配置为允许远程连接. (provider: TCP ...
- APP中关于Android和IOS与网页交互
安卓交互: //安卓js代码start function bntcat(){ if(isAndroid){ musicPause() } var str = '{"tips":20 ...
- django重写用户模型
重写一个UserProfile继承自带的AbstractUser # -*- coding: utf-8 -*- from __future__ import unicode_literals fro ...
- Java 实现文件随机读写-RandomAccessFile
现有如下的一个需求,向已存在1G数据的txt文本里末尾追加一行文字,内容如下“Lucene是一款非常优秀的全文检索库”.可能大多数朋友会觉得这个需求很easy,说实话,确实easy,然后XXX君开始实 ...
- beego——URL构建
如果可以匹配URl,那么beego也可以生成URL吗?当然可以. UrlFor()函数就是用于构建执行函数的URL的.它把对应控制器和函数名结合的字符串作为第一个参数,其余参数对应URL中的变量.未知 ...
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;">
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;">
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;">
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;">
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;">
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;">
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;">
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;">
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;">
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;">