vuecli的lib打包模式,打包之后以require动态引入的静态资源,地址前面都会自己加个js目录,导致获取不到文件?

新手上路,请多包涵

打包的命令行:

"scripts": {
    
    "lib": "vue-cli-service build --target lib --name myHome --dest lib --entry ./src/exportLib.js"
  },

报错:
be6488dfea2b0331b118dd52bc42a07.png

实际代码:

const imgList = [
      require('../../assets/1.png'),
      require('../../assets/2.png'),
      require('../../assets/3.jpg'),
      require('../../assets/4.png'),
      require('../../assets/5.png'),
    ];

lib包目录结构
c235224c73336ac9d489f3c9a264342.png

阅读 2.3k
1 个回答

放在 public 目录下的静态资源直接使用 绝对路径 的形式直接使用就可以了,并不需要再使用 require 把资源加载进来。
比如说你的 /public/lib/img/ 这个目录下的图片文件,直接这样写就行了:

const imgList = [
  '/lib/img/1.png',
  '/lib/img/2.png',
  '/lib/img/3.png',
  ...
]
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题