2
參數給出閱讀從構造函數調用
const anInstance = new Plugin({ a: 'path' })
可以返回給定的參數?
anInstance./* some method */ === [{ a: 'path' }]
// or
someWrapper(anInstance) === [{ a: 'path' }]
限制:
- 你不能改變內部實行
Plugin
:當作外部依賴。 Plugin
可能有多個參數,任何類型。不能分配初始參數的外部變量,就像這樣:
const config = { a: 'path' } const anInstance = new Plugin(config)
背景:我試圖寫一個的WebPack插件配置測試。例如:
module.exports = {
plugins: [
new wepback.DllPlugin({
name: '[name]',
path: path.join(buildDir, '[name].json'),
})
]
}
我想測試給定給DllPlugin的配置。上面的限制#3是因爲我不想爲每個插件導出配置時,該導出的唯一使用者將是我的測試。
如果沒有辦法做我最初的問題,那麼我將不得不添加這些出口,因爲我想不出任何其他方式來訪問這些參數。
我將不得不爲每個類做到這一點?例如,如果我有'Plugin'和'Plugin2',我需要'getPluginArgs'和'getPluginArgs2'? – neezer
@neezer如果功能不同,是的。 'Plugin'與'Plugin2'不同,是嗎?你可能可能創建一個函數,你可以傳遞函數引用來創建和擴展'class'來執行這個過程。 – guest271314
@neezer參見[Classes](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes) – guest271314