配置文件package.json

nw在启动应用程序时,首先要读取package.json文件,初始化基本属性,下面我们看看package.json的完整参数。每个参数配置都标有注释。

  1. {
  2. /**指定程序的起始页面。*/
  3. "main": "index.html",
  4. /**字符串必须是小写字母或者数字,可以包含.或者_或者-不允许带空格。name必须全局唯一。*/
  5. "name": "demo",
  6. /**程序描述*/
  7. "description": "demo app of node-webkit",
  8. /**程序版本号*/
  9. "version": "0.1.0",
  10. /**关键字*/
  11. "keywords": ["demo","node-webkit"],
  12. /**bool值,如果设置为false,将禁用webkit的node支持。*/
  13. "nodejs": true,
  14. /**
  15. * 指定一个node.js文件,当程序启动时,该文件会被运行,启动时间要早于node-webkit加载html的时间。
  16. * 它在node上下文中运行,可以用它来实现类似后台线程的功能。
  17. * (不需要可注释不用)
  18. */
  19. //"node-main": "js/node.js",
  20. /**
  21. * bool值。默认情况下,如果将node-webkit程序打包发布,那么只能启动一个该应用的实例。
  22. * 如果你希望允许同时启动多个实例,将该值设置为false。
  23. */
  24. "single-instance": true,
  25. /**窗口属性设置 */
  26. "window": {
  27. /**字符串,设置默认title。*/
  28. "title": "demo",
  29. /**窗口的icon。*/
  30. "icon": "link.png",
  31. /**bool值。是否显示导航栏。*/
  32. "toolbar": false,
  33. /**bool值。是否允许调整窗口大小。*/
  34. "resizable": true,
  35. /**是否全屏*/
  36. "fullscreen": false,
  37. /**是否在win任务栏显示图标*/
  38. "show_in_taskbar": true,
  39. /**bool值。如果设置为false,程序将无边框显示。*/
  40. "frame": true,
  41. /**字符串。窗口打开时的位置,可以设置为“null”、“center”或者“mouse”。*/
  42. "position": "center",
  43. /**主窗口的的宽度。*/
  44. "width": 800,
  45. /**主窗口的的高度。*/
  46. "height": 670,
  47. /**窗口的最小宽度。*/
  48. "min_width": 400,
  49. /**窗口的最小高度。*/
  50. "min_height": 335,
  51. /**窗口显示的最大宽度,可不设。*/
  52. "max_width": 800,
  53. /**窗口显示的最大高度,可不设。*/
  54. "max_height": 670,
  55. /**bool值,如果设置为false,启动时窗口不可见。*/
  56. "show": true,
  57. /**是否在任务栏显示图标。*/
  58. "show_in_taskbar":true,
  59. /**
  60. * bool值。是否使用kiosk模式。如果使用kiosk模式,
  61. * 应用程序将全屏显示,并且阻止用户离开应用。
  62. * */
  63. "kiosk": false
  64. },
  65. /**webkit设置*/
  66. "webkit": {
  67. /**bool值,是否加载插件,如flash,默认值为false。*/
  68. "plugin": true,
  69. /**bool值,是否加载Java applets,默认为false。*/
  70. "java": false,
  71. /**bool值,是否启用页面缓存,默认为false。*/
  72. "page-cache": false
  73. }
  74. }

在上面的配置中,main和name是必须的属性。其他简单明了的就大伙就直接看注释吧,博主主要讲讲几个比较难理解的参数配置。

(1)"node-main"配置:指定一个js文件,该js文件是启动程序时最早运行文件,在node-main脚本中还可以访问全局的“window”对象,它指向DOM窗口,但是如果页面导航发生变化,访问到的window对象也会发生变化。因为它执行时间要早于DOM加载,所以要等页面加载完毕,才能使用“window”对象。同时,在DOM页面中,可以通过process.mainModule来获取node-main信息。

(2)"single-instance"配置:简单地说,是指是否允许同时打开多个nw应用。

(3)"kiosk"配置:如果该配置设为ture,则显示为全屏模式并屏蔽关闭按钮,即该显示器将会一直停留在nw应用的显示界面,类似于银行的排队等待办理业务的取票机界面。

nwjs 配置文件package.json 转载的更多相关文章

  1. node --save可以省略掉手动修改package.json的步骤

    当你为你的模块安装一个依赖模块时,正常情况下你得先安装他们(在模块根目录下npm install module-name),然后连同版本号手动将他们添加到模块配置文件package.json中的依赖里 ...

  2. nw.js node-webkit基本程序结构与配置package.json配置说明

    (一)基本程序结构 如上图,是一个nw程序的基本组织结构,在根目录下有package.json(程序的配置文件)和index.html(可以是任意名称,应用的启动页面):js/css/resource ...

  3. [转载]npm 与 package.json 快速入门教程

    npm 与 package.json 快速入门教程 2017-08-02 19:16:20 拭心 阅读数 78648更多 分类专栏: 学学前端   版权声明:本文为博主原创文章,遵循CC 4.0 BY ...

  4. 【vue】vue-cli 脚手架项目简介(一) - package.json

    vue-cli是用来生成 vue项目的命令行工具,它的使用方法是这样的: vue init <template-name> <project-name>第二个参数 templa ...

  5. npm的package.json字段含义中文文档

    简介 本文档有所有package.json中必要的配置.它必须是真正的json,而不是js对象. 本文档中描述的很多行为都受npm-config(7)的影响. 默认值 npm会根据包内容设置一些默认值 ...

  6. Nodejs package.json文件介绍

    每个npm的安装包里面都会包含一个package.json,通常这个文件会在包的根目录下. 这个文件很类似于.net项目中的.csproj+AssemblyInfo.cs+App.config文件,主 ...

  7. 关于package.json的理解

    在我们打包项目的时候或者使用node的时候,常常会看到package.json这个文件,里面乱七八糟的一大堆json,开始的时候没注意,以为是使用node或者npm的时候自动创建的,后来自己写demo ...

  8. 【转廖大神】package.json 包安装

    现在我们遇到第一个问题:koa这个包怎么装,app.js才能正常导入它? 方法一:可以用npm命令直接安装koa.先打开命令提示符,务必把当前目录切换到hello-koa这个目录,然后执行命令: C: ...

  9. package.json的配置理解

    一.初步理解 1. npm安装package.json时  直接转到当前项目目录下用命令npm install 或npm install --save-dev安装即可,自动将package.json中 ...

随机推荐

  1. jQuery--选择器总结

    传统选择器:$('#test') id选择器 $('.test') class选择器$('p') 标签选择器$('*') 通配符选择器$('div,span,.myclass') 多个元素选择器层次选 ...

  2. c语言计算矩阵特征值和特征向量-1(幂法)

    #include <stdio.h> #include <math.h> #include <stdlib.h> #define M 3 //方阵的行数 列数 #d ...

  3. 解决maven创建web项目卡死在generator插件(转)

    如下图所示:在Properties中添加一个参数archetypeCatalog=internal,不加这个参数,在maven生成骨架的时候将会非常慢,有时候会直接卡住. 理由 archetypeCa ...

  4. Python开发入门与实战22-简单消息回复

    22. 简单消息回复 本章节我们来实现一个微信库存查询功能,使用我们前面的BIZ业务逻辑层示例如何利用微信入口来实现文本消息类的库存查询服务. 22.1. 在responseMsg函数里增加处理微信文 ...

  5. 百度star编程赛-练习1

    ztr loves math http://acm.hdu.edu.cn/showproblem.php?pid=5675 显然:4 ^ n * (a + b) * (a -b) #include & ...

  6. [解决方案] pythonchallenge level 2

    http://www.pythonchallenge.com/pc/def/ocr.html 根据页面提示查看网页源代码,在最后:<!--find rare characters in the ...

  7. 接口json返回 封装

    /** * @param string $str * @param string $str2 * 10001  成功 * 10002  失败 * 10003  参数缺少 * */function js ...

  8. js地区转盘抽奖插件

    <script type="text/javascript"> var colors = ["#B8D430", "#3AB745&quo ...

  9. 操作系统学习笔记(五)--CPU调度

    由于第四章线程的介绍没有上传视频,故之后看书来补. 最近开始学习操作系统原理这门课程,特将学习笔记整理成技术博客的形式发表,希望能给大家的操作系统学习带来帮助.同时盼望大家能对文章评论,大家一起多多交 ...

  10. 黑马------synchronized详解

    黑马程序员:Java培训.Android培训.iOS培训..Net培训 JAVA线程-synchronized详解 一.synchronized概述 1.线程间实现互斥,必须使用同一个监视器(一个对象 ...