2016-02-29 67 views
6

我正試圖在流星1.3測試版中設置cloudinary,我現在正在爲NPM包進行設置。我遇到了一個更大的問題,其中一個包庫中有一個聲明crypto = require('crypto');這很好。我剛剛通過npm安裝了加密包。但客戶仍然給我錯誤Uncaught Error: Cannot find module 'crypto'。 … 有什麼建議麼?我在哪裏可以在Meteor 1.3中安裝npm包,以便其他npm庫可以要求它

注意,兩個模塊都在同一個目錄node_modules:

node_modules 
    crypto 
    material-ui 
    react 
    react-cloudinary 
    react-dom 
    react-mounter 
    react-tap-event-plugin 

這尤其是一個流星1.3的問題,因爲我進口NPM庫

回答

0

如果模塊A require S模塊乙,而模塊B需要在模塊A的node_modules目錄中可用。這通常是npm和node所做的事情,您可能已經熟悉了。它在流星1.3中以相同的方式工作。

如果您是模塊A的開發人員,則可以在npm或npm link中查看peer dependencies。或者你只需​​在模塊中運行npm install,看看是否解決了這個問題。

+0

那麼每個模塊需要一個包含它所依賴的每個模塊的目錄?這似乎是多餘的......我想我在模塊的目錄中使用'npm install'會給我帶來麻煩? –

+0

是的,嘗試一下。 它看起來多餘,但另一方面它有助於每個模塊獨立。 – bert

0

NPM軟件包加密只能在服務器端使用,因爲它是一個內置的NodeJS庫。這是一個高性能的庫,所以也許是編譯好的。

如果你可以改變代碼,你可以使用純js庫來創建哈希,如JS Hashes

JS哈希可以在客戶端以及服務器端使用。

相關問題