NW.js由node-webkit项目发展而来
其实很多东西官网上都有。但是鉴于搜索引擎(百度,google)搜索到的相关文章,让人看的很不明白。所以决定写下此篇文章。 官网:https://nwjs.io/
中文文档:http://nwjs-cn.readthedocs.io/zh_CN/latest/index.html 1.nw.js是干嘛的?
官网上的解释:
NW.js基于Chromium和Node.js . NW.js能够通过页面技术开发桌面应用 , 同时可以调用Node.js代码以及模块 . 未来 , 你可以使用NW.js轻松将页面应用制作成桌面应用 .
简单的说,就是用web技术开发跨平台PC桌面应用。 2.mac官网方式的环境安装:
打开官网,他会自动检测本机环境,弹出mac os版本的下载:
这2个都需要下载吗?是的。
Normal里有个nwjs.app文件,用于我们最终发布。当然文档里也说了,可以用自动的发布方式:nwjs-builder nw-builder(都是通过npm安装)。我这里采用了手动发布的方式,那就必须要下载Normal这个文件。
sdk这个文件是干嘛的?
这个文件是我们开发阶段调试用的,里面有调试的工具。如果用Normal里中的命令,我们无法在开发阶段调试我们的代码。
最后,我们把解压后的文件都放到应用程序目录,
3.mac上npm方式的环境安装:
如果上面的安装你已经完成了,这部分可以不看。因为这是另一种安装方式。
环境的安装除了官网上的这2个文件的安装,其实还有npm的安装,但是在使用的过程中发现有报错。
npm install -g nwjs
止痒我们直接使用nw的命令了,查看版本:
nw -V
显示1.4.4.
运行项目:
nw /项目目录
结果报错:
Cannot read property 'split' of undefined
at module.exports (/usr/local/lib/node_modules/nwjs/lib/old-version.js:2:20)
...

  

算了,还是用官网上的安装方式,参见2.

4.hello world
我们新建文件夹:
test_nw,里面2个文件:
package.json 文件:
{
"name": "helloworld",
"main": "index.html"
}

 

index.html 文件:
<!DOCTYPE html>
<html>
<head>
<title>Hello World!</title>
</head>
<body>
<h1>Hello World!</h1>
</body>
</html>

  

开发阶段运行:命令行切换到工作目录nw_test1,然后用的sdk的命令:
/Applications/nwjs-sdk-v0.29.3-osx-x64/nwjs.app/Contents/MacOS/nwjs .

 右键程序点击检查,这样就可以轻松的调试了

 


打包:使用官网上推荐的的方式普通文件打包方式,注意,我们的环境是mac os:
首先copy一份Normal里的nwjs.app在同级目录下,和nw_test1平行。
我们通过右键查看显示包内容,找到Contents/Resources目录。然后我们把nw_test1修改为test.app。
将test.app拖入这个目录,你会发现,原来的nwjs.app名字改变了,变成了nwjs.app.这就是我们最终的应用程序。双击可以打开。
 

mac nwjs入门的更多相关文章

  1. Mac redis入门

    Mac redis入门 一.Redis简介 Redis是开源的key-value数据库,运行在内存中,但可以把数据持久化存到磁盘.Redis具有极高的性能,也为各种语言提供了丰富的接口,因此有着广泛的 ...

  2. Mac Pro 入门、遇到的问题、个性化设置 汇总

    入门资料 入门一:Mac 基本用法 入门二:Mac 使用VMware Fusion虚拟机 入门三:Mac 使用brew安装软件 问题汇总 [问题1]如何复制文本? 一只手指头按下,另外一只手指头滑动选 ...

  3. Mac使用入门

    mac常用快捷键 全屏/退出全屏 ctr+command+F 切换到桌面 fn+f11 输入法切换 ctr+空格 亮度 f1.f2 声音 f11.f12 复制.粘贴 command+c.command ...

  4. Mac新手入门使用教程 - Finder 技巧

    1,了解MAC电脑桌面.   Finder:中间DOCK栏下最左边蓝白相间的图标. DOCK栏:包括Finder.前往应用程序.创建所有应用程序的快捷方式(google浏览器等).系统偏好设置.堆栈. ...

  5. Visual Studio for mac从入门到放弃1

    MAC  第一步:从微软官网下载:https://www.visualstudio.com/vs/visual-studio-mac/ 第二步:安装软件过程出现 It was not possible ...

  6. Mac新手入门:mac操作技巧

    面对全新的mac电脑,你是不是一脸的迷茫,一些原来windows上的基本操作在mac上都不知道从何入手了,下面小编就为大家整理了一些基本的操作.相信一定会方便你的学习和工作的. 如何压缩与解压缩 在M ...

  7. linux\mac 日常入门命令行使用——搜索文件\文件夹

    搜索文件或者文件夹,是一个常见的需求.我们可以用多种命令来实现我们的需求. find 命令实现搜索 find 是英文,寻找的意思.这个命令可以很方面的来搜索我们需要的内容. 标准命令如下: find ...

  8. Mac Pro 软件安装/个性化配置 汇总

    苹果产品维修 一.Spotlight 搜索程序和文档 Spotlight是最最常用的东西, 类似Windows开始菜单中的搜索.  可以用来搜索文档,也可以搜索本机的程序, 这样可以快速启动. 点击右 ...

  9. 摸索探寻之Mac OS 使用及快捷键

    刚发现的一个介绍Mac OS入门的帖子,新入手Mac的同学可以看看http://www.cnblogs.com/chijianqiang/archive/2011/08/03/2126593.html ...

随机推荐

  1. sprintf_s函数用法

    函数功能:将数据格式化输出到字符串 函数原型: int sprintf_s( char *buffer, size_t sizeOfBuffer, const char *format [, argu ...

  2. GMT,UTC,DST,CST时间详解

    全球24个时区的划分       相较于两地时间表,可以显示世界各时区时间和地名的世界时区表(World Time),就显得精密与复杂多了,通常世界时区表的表盘上会标示着全球24个时区的城市名称,但究 ...

  3. 使用jQuery.makeArray() 将多种类型转换成JS原生Array

    jQuery.makeArray(obj)这个函数从名字上来看非常easy猜出它的用途:应该是用来将传入的对象转换成一个原生array 再看看官网上对它的解释:Convert an array-lik ...

  4. Spring源代码解析和配置文件载入

    Spring类的继承结构图: Spring运用了大量的模板方法模式和策略模式,所以各位看源代码的时候,务必留意,每个继承的层次都有不同的作用.然后将同样的地方抽取出来,依赖抽象将不同的处理依照不同的策 ...

  5. jxl 导入导出Excel(有模板)

    1.导入 @Override public String importBusinessScope(File file, String unit_id) throws Exception { Workb ...

  6. 用sp_executesql执行动态SQL语句及获得返回值

    过去我执行拼凑出来的动态SQL语句,都直接使用EXEC @sql 的方式.有好几次,都看到有资料说,应该尽量使用 sp_executesql. 究其原因,是因为仅仅参数不同的情况下,sp_execut ...

  7. bzoj 1034 [ ZJOI 2008 ] 泡泡堂BNB —— 贪心

    题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1034 一开始想了个很麻烦的贪心做法,对于每个 a[i],找第一个大于它的 b 匹配…… 然后 ...

  8. 完美解决 linux sublime 中文无法输入

    感谢oschina 中几位前辈的分享 下面是我结合自己的情况所配置的具体步骤: 系统环境: ubuntu 12.10 输入法:fcitx fcitx 安装 apt-get install fcitx ...

  9. iOS网络开发工具集----字符串操作和时间操作

    一.字符串的操作方法 #pragma mark - 创建字符串 - (void)CreatString { // <1> 创建字符串 NSString *strS = @"Thi ...

  10. 82.角色管理Extjs 页面

    1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8&quo ...