使用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到底是单线程的还是多线程的?通过本章的学习,能够 ...
随机推荐
- 【Python基础】装饰器的解释和用法
装饰器的用法比较简单,但是理解装饰器的原理还是比较复杂的,考虑到接下来的爬虫框架中很多用到装饰器的地方,我们先来讲解一下. 函数 我们定义了一个函数,没有什么具体操作,只是返回一个固定值 请注意一下缩 ...
- 160722、Javascript函数节流
最近在做网页的时候有个需求,就是浏览器窗口改变的时候需要改一些页面元素大小,于是乎很自然的想到了window的resize事件,于是乎我是这么写的 <!DOCTYPE html> < ...
- 通过创建脚本代替"scrapy crawl Test"命令
文件结构: 1.在命令行scrapy crawl Test正常运行的条件下在项目的根目录创建start.py文件(注意目录,同scrapy.cfg文件一个目录): start.py源代码: # -*- ...
- iPhone设备分辨率一览
地址:https://developer.apple.com/design/human-interface-guidelines/ios/icons-and-images/launch-screen/
- java 子类不能继承父类的static方法
先来看一段代码 /** * Created by bjchengpeng on 2018/7/19. */ /**运行结果 * woof * woofaa * * woof * Basenjiaa * ...
- 6.Insert Documents-官方文档摘录
总结 1.插入单文档 db.inventory.insertOne( { item: "canvas", qty: , tags: , w: 35.5, uom: "cm ...
- 异常处理、socke基于TCP协议编程
一.异常处理 1.错误和异常 1.程序中难免出现错误,而错误分成两种 (1)语法错误(这种错误过不了Python解释器的语法检测,必须在程序执行前改正) #语法错误示范一 if #语法错误示范二 de ...
- Python 模块之 xlrd (Excel文件读写)
# 1. 导入模块 import xlrd # 2.打开Excel文件读取数据 data = xlrd.open_workbook('excelFile.xls') # 3. 使用技巧 # 3.1 获 ...
- Python 模块之 time & datetime
Python 中提供了对时间日期的多种多样的处理方式,主要是在有 time 和 datetime 两个模块. time 在 Python 文档里,time 是归类在 Generic Operating ...
- Django 分页器 缓存 信号 序列化
阅读目录 分页器 缓存 信号 序列化 Django分页器 (paginator) 导入 from django.core.paginator import Paginator, EmptyPage, ...