Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/397.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 网页包图像加载器仅缩小png';s_Javascript_Webpack - Fatal编程技术网

Javascript 网页包图像加载器仅缩小png';s

Javascript 网页包图像加载器仅缩小png';s,javascript,webpack,Javascript,Webpack,我还是新的网页,所以有一些初期的问题。正在最小化/加载的唯一图像是PNG。我尝试过使用图像加载器和url加载器,它们都有相同的结果。还尝试重新排序测试类型 下面是使用文件加载器在我的webpack.config.js文件中的配置 images: { test: /\.(gif|png|jpg|svg)$/i, exclude: /scss/, loaders: [ 'url-loader?limit=1&name=i

我还是新的网页,所以有一些初期的问题。正在最小化/加载的唯一图像是PNG。我尝试过使用图像加载器和url加载器,它们都有相同的结果。还尝试重新排序测试类型

下面是使用文件加载器在我的webpack.config.js文件中的配置

images: {
        test: /\.(gif|png|jpg|svg)$/i,
        exclude: /scss/,
        loaders: [
            'url-loader?limit=1&name=images/[path][name].[ext]&context=./resources/assets/src/images',
            'image-webpack'
        ]
    }
和文件加载器

    images: {
    test: /\.(gif|png|jpg|svg)$/i,
    exclude: /scss/,
    loaders: [
        'file?name=images/[path][name].[ext]&context=./resources/assets/src/images',
        'image-webpack'
    ]
}
它们都有ImageWebPackageLoader

imageWebpackLoader: {
    optimizationLevel: 4,
    pregressive: true,
    interlaced: true,
    svgo: {
        plugins: [{
            removeViewBox: false
        }, {
            removeEmptyAttrs: false
        }]
    }
}
我的src树看起来像这样

├── content
│   └── registration-confirmation.png
├── decoration
│   ├── accordion-arrow-open.png
│   ├── accordion-arrow.png
│   ├── homepage-postcode-decoration.png
│   ├── paper-background.png
│   └── tape.png
├── homepage
│   ├── blast-from-the-past.jpg
│   ├── feature-arangement.png
│   ├── feature-delivery.png
│   ├── feature-flowers.png
│   ├── hero-mobile.jpg
│   ├── hero.jpg
│   ├── next-weeks-flowers.jpg
│   └── welcome.jpg
├── icons
│   ├── burger-menu-bar.png
│   ├── burger-menu-item-active.png
│   ├── checkbox-active.png
│   ├── checkbox-error.png
│   ├── checkbox.png
│   ├── copy-link.png
│   ├── dropdown-arrow-error.png
│   ├── dropdown-arrow.png
│   ├── email.png
│   ├── radiobutton-active.png
│   └── radiobutton.png
└── svg
    └── freddies_flowers_logo.svg
但构建过程如下所示:

.
├── decoration
│   ├── accordion-arrow-open.png
│   ├── accordion-arrow.png
│   ├── paper-background.png
│   └── tape.png
└── icons
    ├── burger-menu-bar.png
    ├── burger-menu-item-active.png
    ├── checkbox-active.png
    ├── checkbox.png
    ├── dropdown-arrow-error.png
    ├── dropdown-arrow.png
    ├── radiobutton-active.png
    └── radiobutton.png

看起来测试模式中有jpeg,但没有jpg,并且所有文件都有jpg扩展名

此外,name参数看起来可疑。看起来您正在重复路径前部的images子目录,但上下文参数已将图像指定为路径的一部分。路径是否为图像/图像

我会尝试以下方法:

'file?name=[path][name].[ext]&context=./resources/assets/src/images'

我还会尝试完全不使用上下文参数,而是使用
include

images: {
    test: /\.(gif|png|jpg|svg)$/i,
    include: './resources/assets/src/images',
    loaders: [
        'file?name=[path][name].[ext]',
        'image-webpack'
    ]
}

更新

我克隆了你的git repo,这些文件没有被复制,因为它们没有被webpack构建的任何JS或CSS引用。它们仅由静态HTML或Web包入口点之外的资产引用。网页包加载程序将仅复制在构建入口点时必须加载的文件。如果您想复制不属于正在构建的应用程序的文件,则可以考虑使用.< /P> 否则,在应用程序中使用资源后,这些资源将被复制到构建中

示例

生成目录不包括
复选框error.png
,但它确实包括
复选框active.png
\u checkbox.scs
中有一个样式规则,它引用了
checkbox active.png
,但没有引用
checkbox error.png
。我添加了一个样式规则,它引用了
checkbox error.png
,如下所示:

    &:checked.error {
        + label {

            text-decoration: none;
            $image: $img-icon-path + 'checkbox-error.png';
            @include pseudo-el(before, 32px, 30px) {
                background: url($image) no-repeat;
            }
        }
    }

然后重新运行构建。现在,
复选框错误。png
在输出目录中。

看起来测试模式中有jpeg,但没有jpg,并且所有文件都有jpg扩展名

此外,name参数看起来可疑。看起来您正在重复路径前部的images子目录,但上下文参数已将图像指定为路径的一部分。路径是否为图像/图像

我会尝试以下方法:

'file?name=[path][name].[ext]&context=./resources/assets/src/images'

我还会尝试完全不使用上下文参数,而是使用
include

images: {
    test: /\.(gif|png|jpg|svg)$/i,
    include: './resources/assets/src/images',
    loaders: [
        'file?name=[path][name].[ext]',
        'image-webpack'
    ]
}

更新

我克隆了你的git repo,这些文件没有被复制,因为它们没有被webpack构建的任何JS或CSS引用。它们仅由静态HTML或Web包入口点之外的资产引用。网页包加载程序将仅复制在构建入口点时必须加载的文件。如果您想复制不属于正在构建的应用程序的文件,则可以考虑使用.< /P> 否则,在应用程序中使用资源后,这些资源将被复制到构建中

示例

生成目录不包括
复选框error.png
,但它确实包括
复选框active.png
\u checkbox.scs
中有一个样式规则,它引用了
checkbox active.png
,但没有引用
checkbox error.png
。我添加了一个样式规则,它引用了
checkbox error.png
,如下所示:

    &:checked.error {
        + label {

            text-decoration: none;
            $image: $img-icon-path + 'checkbox-error.png';
            @include pseudo-el(before, 32px, 30px) {
                background: url($image) no-repeat;
            }
        }
    }

然后重新运行构建。现在,
checkbox error.png
在输出目录中。

哦,是的,刚刚尝试删除它。但仍然不起作用我已经将其更改为此,但仍然没有运气
images:{test://\(gif | png | jpg | svg)$/i,exclude:/scss/,include:path.src+'images/',loaders:['file?name=[path][name].[ext ext','image webpack']
很抱歉格式化,这是我正在运行的
webpack--progress--colors--watch--config webpack.development.config.js
如果这有什么不同的话。它仍然是完全相同的行为吗?上面列表中的文件总是被复制到输出目录中吗?是的,总是所有的pngOh是的,只是尝试删除它。但仍然不起作用我已经将其更改为此,但仍然没有运气
images:{test://\(gif | png | jpg | svg)$/i,exclude:/scss/,include:path.src+'images/',loaders:['file?name=[path][name].[ext ext','image webpack']
很抱歉格式化,这是我正在运行的
webpack--progress--colors--watch--config webpack.development.config.js
如果这有什么不同的话。它仍然是完全相同的行为吗?上面列表中的文件是否总是完全相同的文件被复制到输出目录?是的,总是所有的文件。你在没有imageWebpackLoader的情况下试过看它是否工作吗?是的,我尝试的第一件事你在没有imageWebpackLoader的情况下试过看它是否工作吗?是的,我尝试的第一件事