我使用的是Webpack ^2.2.1
和Style-Loader ^0.13.2
。Style-Loader可用功能在Webpack 2.x中不起作用
規則從我的WebPack配置.css文件看起來像:
{
test: /\.css$/,
use: [
{ loader: 'style-loader', options: { useable: true } },
{ loader: 'css-loader' }
]
}
現在,當我異步import
(前require.ensure
,System.import
)一個CSS文件,你收到的對象,而不是原始的CSS數據,附帶的方法:use()
和unuse()
(因爲,useable
選項設置爲true
)。
import('./mod1.css').then(cssRaw => {
setTimeout(() => {
// let's assume an async use case
cssRaw.use();
},3000);
});
但是,這將不再適用於我(Uncaught TypeError: cssRaw.use is not a function
)。
實際上,import
(前者System.import
)在這裏提供的對象並不擁有這樣的方法。
有沒有什麼我在這裏做錯了或在Webpack 2.x做了什麼改變? 此確切代碼預先正確工作。
由於這是在到目前爲止的答案中提到,在經過架字符串作爲
{ loader: 'style-loader/useable' }
工作只是預期。如果這是應該走的路,我猜「recommended configuration for style-loader in 2.x」是相當錯誤的。
我提交了被接受今日(https://github.com/webpack-contrib/style-loader/pull/185/commits)固定在GitHub上的WebPack頁面上的問題。
你說得對,如果我們按照你所描述的那樣通過loader-string,它就可以工作。在這種情況下,我很難用官方的「2.x *的Webpack樣式加載器指南」(https://webpack.js.org/loaders/style-loader/#recommended-configuration)來明確描述它'可用'功能作爲選項。 – jAndy
幸運的是,Webpack文檔在許多情況下絕對不知道是最新的還是正確的。 –