node-webkit 项目中的 package.json 格式
文章目录
node.js 既然是依靠google V8引擎驱动的,而chrome浏览器内置了V8,所以就诞生了 node-webkit 这样的项目.
它的执行宿主也是 浏览器,但是由于 node.js 的支持,我们可以轻松访问当前执行环境的OS ,这不就是PC 客户端程序的功能吗.
可见 node-webkit 项目利用了web UI 的优势,node.js 访问本地OS 的优势,从而用 javascript 实现了一个本地 客户端程序.
今天我们首先来看下一个简单的 node-webkit 项目中 package.json 中,各项所代表的意义.
实例:
{
"name": "ServerManage",
"main": "index.html",
"nodejs": true,
"window": {
"title": "Server Manage",
"toolbar": false,
"width": 480,
"height": 350,
"resizable": true,
"show_in_taskbar": true,
"frame": true,
"kiosk": false,
"position": "center"
},
"webkit": {
"plugin": true
},
"chromium-args": "--enable-threaded-compositing"
}
必填字段
main node-webkit打开时的默认页面
name 包的名字,必须为独一无二的,可由字母,数字,下划线组成,不能有空格
功能性字段
nodejs node-webkit中是否启用 node.js (布尔值)
node-main node-webkit打开时的加载的node.js文件
可通过process.mainModule访问
window 控制窗口的样子,后文细讲。
webkit 控制webkit特性是否启用,后文细讲。
窗口字段
title 默认打开的窗口页面的title
toolbar 是否显示工具栏,地址栏等(布尔值)
icon 此应用图标的路径地址
position 只可能是这么几个值null center mouse。null指无定位,center指在显示器中间,mouse指在鼠标的位置。
min_width/min_height (整形)定义宽度和高度的最小值。
resizable 窗口是否可调整大小 (布尔值)
always-on-top 窗口是否总是置顶状态(布尔值)
fullscreen 打开时是否全屏(默认是否全屏打开)
frame 是否显示窗口框架 (布尔值) 不显示将无法拖动
show 是否在任务栏上显示 (布尔值)
kiosk 是否处于kiosk状态,在kiosk状态下将全屏并且阻止用户关闭窗口(布尔值)