node-webkit解决了我通过htmljs来编写桌面应用的难题

至于node-webkit的定义,按照作者的说法:

“ 基于node.js和chromium的应用程序实时运行环境,可运行通过HTML(5)、CSS(3)、Javascript来编写的本地应用程序。node.js和webkit的结合体,webkit提供DOM操作,node.js提供本地化操作;且将二者的context完全整合,可在HTML代码中直接使用node.js的API。”

1.1  环境安装

webkit是开源项目,项目地址为https://github.com/rogerwang/node-webkit。

我们可以在该项目首页找到downloads节(https://github.com/rogerwang/node-webkit#downloads),该处提供了预编译版本:

Prebuilt binaries (v0.9.2 - Feb 20, 2014):

·      Linux: 32bit / 64bit

·      Windows: win32

·      Mac: 32bit, 10.7+

1.1.1 WINDOWS下的安装

下载windows版本的安装包,解压到磁盘。

双击nw.exe,出现如下界面:

1.1.2  LINUX环境下的安装

以ubuntu为例,首先下载安装包。

wget http://dl.node-webkit.org/v0.8.5/node-webkit-v0.8.5-linux-ia32.tar.gz

解压:

tar -xzf node-webkit-v0.8.5-linux-ia32.tar.gz

运行nw,看是否正常。

我出现

./nw: error while loading shared libraries: libudev.so.0: cannot open shared object file: No such file or directory

的错误。可以按如下方式解决:

1)下载安装ghex:sudo apt-get install ghex

2)在nw可执行文件目录中用ghex打开nw:

ghex  nw

3)在ghex中,ctrl+f,打开搜索工具,查找libudev.so.0。

关闭搜索框,在右侧字符窗口,修改0为1。

4)ctrl+s保存后退出ghex,现在再打开nw就会看到一个小窗口了,这就成功了。

1.2 HELLO WORLD

对新的运行时的尝试,往往都是从经典的hello world开始,本人也不免落俗。

先新建一个helloWorld目录,存放相关文件。

先创建helloWorld.html文件,内容如下(来自作者的示例):

<!DOCTYPE html>

<html>

<head>

<title>Hello World!</title>

</head>

<body>

<h1>Hello World!</h1>

We are using node.js <script>document.write(process.version)</script>.

</body>

</html>

下一步,创建package.json文件:

{

"name": "helloworld",

"main": "helloworld.html"

}

第三步,将helloworld.html和package.json打包到一个zip文件包中。

下面我们使用nw来执行压缩包。

./nw ../helloword/hello.nw

node-webkit学习(1)hello world相关推荐

  1. node.js学习笔记

    # node.js学习笔记标签(空格分隔): node.js---## 一 内置模块学习 ### 1. http 模块 ``` //1 导入http模块 const http =require('ht ...

  2. node.js学习笔记14—微型社交网站

    node.js学习笔记14-微型社交网站 1.功能分析 微博是以用户为中心,因此需要有注册和登录功能. 微博最核心的功能是信息的发表,这个功能包括许多方面,包括:数据库访问,前端显示等. 一个完整的微 ...

  3. node入门-学习笔记

    文章目录 node入门-学习笔记 node 启动node服务 重构express-run node入门-学习笔记 node 为什么后端要用node, 因为它是js js运行时环境 主要使用expres ...

  4. Node.js学习笔记8

    Node.js学习笔记8 HTTP服务器与客户端 Node.js的http模块,封装了一个高效的HTTP服务器和一个简易的HTTP客户端 http.server是一个基于事件的HTTP服务器,核心由N ...

  5. node.js学习笔记5——核心模块1

    node.js学习笔记5--核心模块1 Node.js核心模块主要内容包括:(1)全局对象 (2)常用工具 (3)事件机制 (4)文件系统访问 (5)HTTP服务器与客户端 一: 全局对象 Node. ...

  6. 《写给PHP开发者的Node.js学习指南》一2.2 预定义的PHP变量

    本节书摘来自异步社区<写给PHP开发者的Node.js学习指南>一书中的第2章,第2.1节,作者[美]Daniel Howard,更多章节内容可以访问云栖社区"异步社区" ...

  7. node.js学习总结:node.js的内置模块,模块化,npm与包 express,前后端身份认证 JWT认证机制

    node.js学习总结 什么是node.js node.js的内置模块 fs系统模块 path路径模块 http模块 模块化 npm与包 express express路由 express+mysql ...

  8. WebKit学习之路

    因为某些原因,需要研究和学习WebKit的一些东西,所以整理一下WebKit的资料以备以后查看学习. (1)研究WebKit最重要的就是WebKit官方网站:http://www.webkit.org ...

  9. node.js 学习笔记(二)模板引擎和C/S渲染

    node.js 学习笔记(二)模板引擎和C/S渲染 文章目录 node.js 学习笔记(二)模板引擎和C/S渲染 一.初步实现Apache功能 1.1 使用模板引擎 1.2 在 node 中使用模板引 ...

  10. Node.js 学习 ——nodemon 运行报错解决

    Node.js 学习 --nodemon 运行报错解决 报错记录 nodemon : 无法加载文件 C:\Users\Administrator.DESKTOP-0RUBNO7\AppDat on.p ...

最新文章

  1. gluoncv 训练自己的数据集,进行目标检测
  2. python post与get的区别_python中get和post有什么区别
  3. [scala-spark]11. RDD控制操作
  4. spring ref historydesign philosophy
  5. 根据需要通过代码的方式加载js文件
  6. 【渝粤教育】国家开放大学2018年秋季 1021t劳动与社会保障法 参考试题
  7. 富士 FinePix F401
  8. The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()
  9. 吴恩达深度学习的实用层面编程作业:正则化Regularization
  10. Windows服务器管理(3)——IIS服务器误删了Default Web Site 网站 解决方法
  11. .net weka ikvm java
  12. 13. 面向对象的概述
  13. python编程系列---global的使用注意点
  14. Redis 菜鸟教程学习笔记- Redis 数据结构
  15. 将会彻底破坏你的树莓派的六件事(官网翻译)
  16. 通过python scrapy shell 获取对应的网页元素值
  17. pygame初探:复刻小游戏《Flappy Bird》
  18. sqlitespy怎么打开.db数据库文件
  19. 删除MySQL历史数据并修改sqlsource.status lastindex脚本
  20. R语言编程的高效方法

热门文章

  1. 信息学奥赛一本通 1133:输出亲朋字符串 | OpenJudge NOI 1.7 05
  2. Summarize to the Power of Two(CF-1005C)
  3. 最长公共子上升序列(信息学奥赛一本通-T1306)
  4. 走迷宫(信息学奥赛一本通-T1252)
  5. 素数对(信息学奥赛一本通-T1403)
  6. 信息学奥赛C++语言:杨辉三角形
  7. 信息学奥赛C++语言:重组
  8. 4 CO配置-企业结构-分配-把控制范围分配给经营范围
  9. 从零开始学Java之 编写简单的工程
  10. 离开载具_迷你世界 自制火箭试飞成功 飞行载具不负众望