2017-06-15 64 views
0

我需要一個節點模塊'html-pdf'來將html轉換爲PDF格式,以供我的電子應用使用。由於我使用ASAR打包我的代碼,如果我在asar中打包html-pdf,我無法創建PDF,因爲html-pdf在其中執行了一些寫入操作,ASAR包是隻讀的。因此,我需要在創建包後將HTML-PDF模塊手動放入資源文件夾中,然後創建安裝程序。 我的使用案例:當自動更新應用程序時,我需要在創建安裝程序之前手動複製粘貼html-pdf模塊的任何新版本。 TLDR 我想在用戶計算機中全局安裝一個npm模塊,並且即使我的應用程序已卸載,我也希望它能出現在他的電腦中。如何在安裝電子應用的同時在全球最終用戶的PC上安裝節點模塊?

回答

0

我不認爲我會安裝一個試圖安靜地安裝全局模塊的模塊。我希望它在安裝說明中告訴我這麼做,或者在內部管理模塊(本地安裝)。正如我理解你的用例,它聽起來並不像你真的需要它。如果僅在模塊更新時才發生PDF更改,則只需將HTML轉換爲PDF作爲構建過程的一部分,並將PDF文件保存在最終包中。

+0

事情是我不能打包html-pdf模塊,因爲asar(我不能讓html-pdf在我的項目的node-modules文件夾內,因爲它也與ASAR打包在一起)。所以我現在正在做的是,我手動將模塊(html-pdf)複製到生成的包文件夾內的根目錄(資源)。但每次更新我的應用程序時,我都需要在創建安裝程序之前重複該過程。我注意到,「漫遊」目錄中的內容在應用更新時不會被刪除。所以想着是否可以在第一次安裝應用程序時在用戶的「漫遊」目錄中安裝'html-pdf'模塊。 –

+0

我不是建議你這樣做。我所說的是在你的構建機器上運行html-pdf將html文件轉換爲pdf並在使用ASAR打包之前將它們放置在資源中。你應該運行某種自動構建來完成所有這些工作(例如,grunt,gulp,webpack,無論如何),這可以讓你無需付出多少努力即可添加步驟。 – Paul

相關問題