Vue文件加载器生成正确的路径,但不复制文件

时间:2018-02-20 10:36:17

标签: webpack vue.js vuejs2 webpack-file-loader

我正在处理一个组件,以便按名称从文件夹中呈现图标。这是我的组件文件:

<template>
  <div>
    <img :src="path">
  </div>
</template>

<script>
export default {
  name: 'ballicon',
  computed: {
    path () {
      return require(`./svg/${this.name}.svg`)
    }
  },
  props: {
    name: {
      type: String,
      required: true
    }
  }
}
</script>

我的file-loader的Webpack配置中有一个条目:

{
  test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
  use: {
    loader: 'file-loader',
    options: {
      name: '[name].[hash:7].[ext]',
      publicPath: '../../',
      outputPath: utils.assetsPath('img/') // = static/img
    }
  }
}

渲染我的组件时,它会正确插入名称,哈希和扩展名:

<div>
  <img src="../../static/img/airplane.f6d83ef.svg">
</div>

但是,没有文件被复制到/static/img目录,因此无法加载图像。

0 个答案:

没有答案