美文网首页
VUE打包图片等不能正常加载的问题

VUE打包图片等不能正常加载的问题

作者: 猿分让我们相遇 | 来源:发表于2019-05-27 16:44 被阅读0次

vue项目打包后在production模式下提示图片 ‘404(not found),在dev环境下好好的,打包了就提示这个错误。这是为什么呢,以前第一次使用vue-cli构建项目的的时候只有两个图片文件,当时部署后报错路径问题, 当时的想法就是简单粗暴,直接在build好的文件修改了文件路径,再后来项目中遇到了一大堆静态资源,修改路径显然是不行的,看了一下生成文件大概知道是文件目录改变了,所以引用的路径也要随之改变,网上最简单的方法是修改 ‘config/index.js'文件中的 build模块:

// emplate for index.html
 index: path.resolve(__dirname, '../dist/index.html'),
 // Paths
 assetsRoot: path.resolve(__dirname, '../dist'),
 assetsSubDirectory: 'static',
 assetsPublicPath: './',

将默认的改为上文这样子,静态文件目录改为static,静态路径改为‘./',即相对路径。 ok了?
试了一下还是有404,当时想到的就是难道只能在组件data中以“require”的方式一个一个的引入了吗? 这个属于js中以模块引入方式确实可行,但是太繁琐,想一下,使用这张图的时候在html文档结构中以 “:bind”的方式将资源以code的方式加在html文档中,不是说这样不行,这样也是可以实现想要的效果的,但是这样做会导致不仅文档结构不清晰,冗余度高,维护起来麻烦,而且资源很多的时候这是一项庞大且繁琐的工作,徒增加无用功。
这样第三种方法应用而生,就是修改‘build'目录下的utils.js文件,将文件中的“generateLoaders”函数改为:

pluginfunction generateLoaders (loader, loaderOptions) {
  const loaders = options.usePostCSS ?
   [cssLoader,   postcssLoader] : [cssLoader]
  if (loader) {
   loaders.push({
    loader: loader + '-loader',
    options: Object.assign({}, loaderOptions, {
     sourceMap: options.sourceMap
    })
   })
  }
  // Extract CSS when that option is specified
  // (which is the case during production build)
  if (options.extract) {
   return ExtractTextPlugin.extract({
    use: loaders,
    fallback: 'vue-style-loader',
    publicPath:'../../'         //add
   })
  } else {
   return ['vue-style-loader'].concat(loaders)
  }
 }

重点是if…else判断中的那个”publicPath:'../../' ”
build一下,部署在服务端,ok可行,这样就可以愉快的在style中使用图片资源了。

相关文章

  • VUE打包图片等不能正常加载的问题

    vue项目打包后在production模式下提示图片 ‘404(not found),在dev环境下好好的,打包了...

  • vue 动态加载图片路径

    在用vue-cli脚手架生成的vue项目开发中,动态加载图片本地运行没有问题,但是打包后图片无法显示,图片路径40...

  • 复习3

    vue路由懒加载 1.vue路由懒加载解决的什么 问题:解决打包后文件过大的问题,从而优化页面加载,提升性能 注意...

  • 图片懒加载组件与应用

    实现图片只加载首屏用到的,其他的等滚动到再加载这就是图片懒加载 使用vue-lazyload插件实现 安装vue-...

  • 分享一个swiper遇到的坑

    在官网上参照的例子,但是我在angular和vue项目中都遇到了图片加载完成,轮播却不能正常滑动的问题,这是因为s...

  • 2019-05-10

    vue 组件按需引用,vue-router懒加载,vue打包优化,加载动画 当打包构建应用时,Javascript...

  • Mustache问题

    问题现象 页面加载慢时,会先显示一会Mustache标签,等资源加载完才能正常显示。 解决办法 使用Vue提供的 ...

  • 2019-06-10cordova打包APP,本地图片不显示

    2019-06-10最近用vue开发,cordova打包,开发APP,但是碰到一个问题,就是图片如果用在线的就正常...

  • Vue首屏加载慢的优化方案

    使用vue构建项目首屏加载时,出现加载慢,白屏的问题解决方案: 步骤一 webpack来打包vue项目,vendo...

  • 2021-07-13 项目经验

    1.问题:服务端返回图片404,Vue图片加载失败处理方法; 解决方案: 2.问题:vue +vantUI项目中,...

网友评论

      本文标题:VUE打包图片等不能正常加载的问题

      本文链接:https://www.haomeiwen.com/subject/hlohtctx.html