Style-Loader可用功能在Webpack 2.x中不起作用

时间:2017-03-05 10:40:46

标签: javascript css webpack webpack-style-loader

我正在使用Webpack ^2.2.1和Style-Loader ^0.13.2

我的Webpack配置中的.css文件规则如下:

            {
                test:       /\.css$/,
                use: [
                    { loader: 'style-loader', options: { useable: true } },
                    { loader: 'css-loader' }
                ]
            }

现在,当我异步import(前require.ensureSystem.import)一个css文件时,您正在接收一个对象而不是原始css数据,并附加了相应的方法:{{1 }和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)在此处提供的对象并不拥有此类方法。

我在这里做错了什么或者在Webpack 2.x中做了什么改变? 这个确切的代码事先正常工作。

正如目前为止在答案中提到的那样,将加载器字符串作为

传递
System.import

按预期工作。如果这是假设的方式,我猜“ recommended configuration for style-loader in 2.x ”是非常错误的。

我在Webpack github页面上提交了一个问题,该页面已于今天修复(https://github.com/webpack-contrib/style-loader/pull/185/commits)。

1 个答案:

答案 0 :(得分:3)

将您的加载程序配置更改为以下内容:

{
    test: /\.css$/,
    use: [
        { loader: 'style-loader/useable' },
        { loader: 'css-loader' }
    ]
}

可用似乎不是一个选项,而是一个加载器本身,在style-loader模块目录中可用。