軟件藝術(shù)思考者  
          混沌,彷徨,立志,蓄勢(shì)...
          公告
          日歷
          <2017年2月>
          2930311234
          567891011
          12131415161718
          19202122232425
          2627281234
          567891011

          導(dǎo)航

          隨筆分類(86)

          隨筆檔案(85)

          搜索

          •  

          最新評(píng)論

          閱讀排行榜

          評(píng)論排行榜

           
          NW.js入門

          NW.js能做什么?

          NW.js是基于Node.js的。它允許您直接從瀏覽器調(diào)用Node.js代碼和模塊,并在您的應(yīng)用程序中使用Web技術(shù)。此外,您可以輕松地將Web應(yīng)用程序打包到本機(jī)應(yīng)用程序。

          獲取NW.js

          您可以從官方網(wǎng)站http://nwjs.io獲取最新的二進(jìn)制文件。或者你也可以建立NW.js按照中的說(shuō)明二進(jìn)制文件自行建設(shè)NW.js

          提示:

          建議您選擇SDK構(gòu)建風(fēng)格來(lái)開(kāi)發(fā)您的應(yīng)用程序,這使您能夠使用DevTools調(diào)試您的應(yīng)用程序。有關(guān)構(gòu)建版本之間的差異,請(qǐng)參閱構(gòu)建版本。

          編寫NW.js應(yīng)用程序


          示例1 - Hello World

          這個(gè)基本示例演示如何編寫一個(gè)NW.js應(yīng)用程序。

          步驟1.創(chuàng)建package.json

          {    “name”  “helloworld”    “main”  “index.html”  } 

          package.json是您的應(yīng)用程序中的清單文件。它是以JSON格式編寫的。該main字段顯示了"index.html"在本示例中由NW.js打開(kāi)的第一頁(yè)(如果引用了HTML文件)。該name字段是在NW.js應(yīng)用程序中使用的唯一名稱。有關(guān)詳細(xì)信息,請(qǐng)參見(jiàn)清單格式

          使用JS文件作為主

          你可以把JS文件設(shè)置為"main"字段,如"main.js"。然后,JS文件將在開(kāi)始時(shí)加載到后臺(tái)頁(yè)面,默認(rèn)情況下不打開(kāi)任何窗口。通常你可以做一些初始化,然后手動(dòng)打開(kāi)窗口。例如,

          // initialize your app  // and ...  nw 窗口open 'index.html'  {}, function win  {}); 

          步驟2.創(chuàng)建index.html

          <!DOCTYPE html>  < html >    < head >      < title > Hello World!</ title >    </ head >    < body >      < h1 > Hello World!</ h1 >    </ body >  </ html > 

          這是正常的HTML文件。您可以使用最新瀏覽器支持的任何Web技術(shù)。

          步驟3.運(yùn)行應(yīng)用程序

          cd / path / to / your / app / path / to / nw。 

          /path/to/nw是NW.js的二進(jìn)制文件。在Windows上,它的nw.exe; 在Linux上,它的nw; 在Mac,它的nwjs.app/Contents/MacOS/nwjs

          在Windows上拖放

          在Windows上,您可以拖動(dòng)folder containing package.jsonnw.exe以運(yùn)行應(yīng)用程序。

          示例2 - 使用NW.js API

          所有NW.js API都在nw對(duì)象中全局加載,可以直接在JavaScript文件中使用。有關(guān)支持的API的完整列表,請(qǐng)參閱API參考

          此示例顯示如何在NW.js應(yīng)用程序中創(chuàng)建本機(jī)上下文菜單。您可以index.html使用以下內(nèi)容創(chuàng)建:

          <!DOCTYPE html>  < html >  < head >    < title >上下文菜單</ title >  </ head >  < body  style = “width:100%; height:100%>  < p > “右鍵單擊”顯示上下文菜單。</ p >  < script >  //創(chuàng)建一個(gè)空的上下文菜單 var  menu  =  new  nw Menu ();  //添加一些項(xiàng)目與標(biāo)簽 菜單追加 NW 菜單項(xiàng)({    標(biāo)簽 “項(xiàng)目A”    單擊 函數(shù)(){      警報(bào)'你點(diǎn)擊了“項(xiàng)目A” );    }  }));  菜單追加 NW 菜單項(xiàng)({  標(biāo)簽 '項(xiàng)目B'  }));  菜單追加 NW 菜單項(xiàng)({  類型 “分隔符”  }));  菜單追加 NW 菜單項(xiàng)({  標(biāo)簽 '項(xiàng)目C'  }));  // Hooks“contextmenu”事件 文檔身體的addEventListener '文本菜單'  函數(shù)EV  {    //防止顯示默認(rèn)的上下文菜單   EV 的preventDefault ();    //彈出的地方,你點(diǎn)擊本機(jī)上下文菜單中   的菜單彈出EV 點(diǎn)¯x  EV ÿ );    return  false ;  }, false );  </ script >    </ body >  </ html > 

          ...然后運(yùn)行您的應(yīng)用程序:

          cd / path / to / your / app / path / to / nw。 

          require('nw.gui')

          require('nw.gui')還支持使用傳統(tǒng)的加載NW.js API的方式。它返回相同的nw對(duì)象。

          例3 - 使用Node.js API

          你可以直接從DOM調(diào)用node.js和模塊。所以它使用nw.js編寫應(yīng)用程序的無(wú)限可能。

          此示例顯示如何使用osNode.js的模塊查詢操作系統(tǒng)平臺(tái)。只需創(chuàng)建index.html具有以下內(nèi)容的文件,并使用NW.js運(yùn)行它。

          <!DOCTYPE HTML>  < HTML >  < >    < 標(biāo)題>我的操作系統(tǒng)平臺(tái)</ 標(biāo)題>  </ >  < 身體>  < 腳本>  //使用Node.js的獲取系統(tǒng)平臺(tái)的 變種 OS  =  要求“OS” );  文檔“您正在運(yùn)行的'  操作系統(tǒng)平臺(tái)());  </ script >  </ body >  </ html > 

          您還可以使用由npmNW.js.安裝的模塊。

          本地節(jié)點(diǎn)模塊

          在運(yùn)行時(shí)構(gòu)建的Native Node模塊npm install與NW.js ABI不兼容。要使用它們,你必須用源代碼重建它nw-gyp。有關(guān)詳細(xì)信息,請(qǐng)參閱使用本機(jī)節(jié)點(diǎn)模塊

          下一步是什么

          請(qǐng)參閱使用DevTools調(diào)試以調(diào)試NW.js應(yīng)用程序。

          請(qǐng)參閱打包和分發(fā),以便在生產(chǎn)中打包和重新分發(fā)應(yīng)用程序。

          有關(guān)可能遇到的問(wèn)題,請(qǐng)參閱常見(jiàn)問(wèn)題解答

          如果您要從NW.js 0.12或舊版本遷移應(yīng)用程序,請(qǐng)參閱遷移說(shuō)明

          獲得幫助

          NW.js wiki上有很多有用的信息。維基也是對(duì)所有人開(kāi)放的,你鼓勵(lì)你在wiki上發(fā)布你的知識(shí)。

          您也可以在Google群組的郵件清單或Gitter上的即時(shí)通訊中提出問(wèn)題

          請(qǐng)報(bào)告錯(cuò)誤或提交要求在GitHub使NW.js更強(qiáng)大。

          posted on 2017-02-23 11:26 智者無(wú)疆 閱讀(193) 評(píng)論(0)  編輯  收藏

          只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


          網(wǎng)站導(dǎo)航:
           
           
          Copyright © 智者無(wú)疆 Powered by: 博客園 模板提供:滬江博客


             觀音菩薩贊

          主站蜘蛛池模板: 吉首市| 太谷县| 蒙山县| 满城县| 塘沽区| 巴中市| 海南省| 瑞金市| 长沙市| 西林县| 卓尼县| 若尔盖县| 论坛| 朝阳市| 门头沟区| 屯门区| 恩平市| 亳州市| 遵化市| 龙州县| 互助| 汶上县| 玉田县| 上蔡县| 绥德县| 西青区| 阜阳市| 奎屯市| 乌拉特前旗| 和政县| 溧阳市| 玉林市| 广南县| 清水县| 山阴县| 和政县| 赤水市| 曲阜市| 蓬莱市| 铜山县| 沁源县|