Promise(Bluebird)で複数のファイルにfsが必要な場合は、毎回Promise.promisifyAll(require( 'fs'))を呼び出す必要がありますか? それともすべてのモジュールファイルにPromise.promisifyAll()が必要ですか?
module.exports = Promise.promisifyAll(require('fs'))
だけそのモジュールをインポートすると、小さなモジュールを搭載した方が良いだろうか?
もし私が正しいとすれば、私の最初の選択はいつもfsモジュールを約束し、2番目のモジュールは同じモジュールにのみリンクします。これは一度だけのことです。または、私の第二のように同じことをする私の最初の選択ですか? EDIT
:
const Promise = require('bluebird')
let time1start = Date.now()
for(let i = 0; i <= 1000;i++){
let fs = Promise.promisifyAll(require('fs'))
}
console.log('Time gone 1 Test: ' + (Date.now() - time1start))
let time2start = Date.now()
for(let i = 0; i <= 1000;i++){
let fs = require('./testInc')
}
console.log('Time gone 2 Test: ' + (Date.now() - time2start))
testinc.js:
module.exports = require('bluebird').promisifyAll(require('fs'))
結果は次のとおり 時間行っ1テスト:891 時間行っ2テスト:10 私は2つのオプションをテスト
私の理論は正しく、2番目は速いです。
私は 'CONSTプロミス=必要とする( 'ブルーバード') LETのtime1start = Date.now()のための (; iは= 1000 Defkil