ice.js 开发问题汇总指南(持续补充)

635 阅读1分钟

序:最近一个项目试用ice.js 3.0版。记录开发过程中遇到的一些问题,帮助遇到相同问题的同学过坑。

环境变量配置baseURL不生效

问题描述:

如下,根据官方文档配置baseURL后,不生效。

截屏2023-11-06 13.22.27.png

分析:

  • 把环境变量改为字符串,生效,说明不是请求这边的配置问题,是环境变量的配置问题
  • 怀疑环境变量文件的问题,ice.js的环境变量优先级依次为:
   `.env`
   `.env.local`
   `.env.${mode}`
   `.env.${mode}.local`
请求配置的例子中,文件为.env.local, .env.prod。 于是怀疑为文件名的问题。
改为:.env,.env.local,不生效。
改为:.env.development,.env.production,依然不生效。
  • 因为咱现在是3.0版本,那有没有可能一些文档说明省略了,按经验启动脚本是要指定环境变量配置文件的。
翻看老文档,果然发现需要在启动脚本中设置 --mode dev 这样的配置
兴冲冲一顿配置猛如虎,然而再次滑铁卢
  • 仔细查看文档,发现有句说明 “默认情况下环境变量是不能在运行时访问的,如若需要在浏览器环境中访问,可以在设置环境变量时增加前缀:ICE_
恍然大悟,好嘛,这请求篇章的例子里过于潦草吖。
于是把所有环境文件中的BASEURL加了ICE_前缀

再次尝试,成功!

export const requestConfig = defineRequestConfig(() => {
  return {
    baseURL: process.env.ICE_BASEURL
  }
});