vue

怎么解决vue打包后静态资源图片失效的问题?

发布于 2021-01-11 17:11:46
关注者
0
被浏览
328
6 个回答
  • 面试哥
    面试哥 2021-01-12
    为面试而生,有面试问题,就找面试哥。

    找到config/index.js 配置文件,找build打包对象里的assetsPublicPath属性

    默认值为/,更改为./就好了

    最新的 用vue-cli构建的VUE项目,貌似没有那个config文件夹,更没有那个assetsPublicPath属性了,怎么办呢

  • 面试哥
    面试哥 2021-01-12
    为面试而生,有面试问题,就找面试哥。

    找到config/index.js 配置文件,找build打包对象里的assetsPublicPath属性
    默认值为/,更改为./就好了

    最新的 用vue-cli构建的VUE项目,貌似没有那个config文件夹,更没有那个assetsPublicPath属性了,怎么办呢

    可以自己新建的config.js 在里面配置

  • 面试哥
    面试哥 2021-01-12
    为面试而生,有面试问题,就找面试哥。

    上面蛮多回答感觉像开玩笑似的,静态资源图片失效分几种情况。
    1、确定线上环境是否在根路径上,配置资源根目录,vue-cli2 和 vue-cli3 字段不一致(assetsPublicPath 和 publicPath ),如果项目是根路径上,用'/','./'都行,如果是在'/hc'这个路径上,用'./' 相对路径(需history模式),也可以用'/hc/'。 在'/hc'路径上,如果需要本地和线上保持一致,可以用环境做判断设置不同的publicPath值。
    2、确定静态文件放置的位置。
    ①、如果放在public/static,不经过webpack打包, 放在public 又分使用绝对路径和相对路径。
    ②、如果放在assets, 经过webpack打包, 使用的是相对路径
    3、路径是否是动态的,如果是动态,需要用require() 引入。

    https://blog.csdn.net/qq_31126175/article/details/99550889

知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看