ES6 import 文件使用绝对路径该怎么写?

ES6 import 绝对路径文件该怎么写?

比如 vue 项目中的某个 .vue 文件
我在 script 里需要获取 public 目录下的静态文件
我想通过绝对路径的方式调用, (假设public 目录下有 abc.json 文件)
可是直接写
import XXX from '/abc.json' 并不能获取到该文件,反而被当做是一个模块
目前解决方案是使用相对路径,有人知道使用绝对路径该如何调用吗?

阅读 4.8k
1 个回答

因为最后会经过 Webpack 打包,Webpack 在打包时是找不到 /abc.json 文件的,此时它还在 public / static 目录下。

建议你把需要静态分析并打包的文件放到 src 路径下,并起个路径别名(alias)。

如果非要在 public / static 目录下,建议使用 AJAX 请求获取数据,大概像这样:

const baseUrl = process.env.BASE_URL;
const data = await fakeHttpGet(`${baseUrl}/abc.json`);
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题