【发布时间】:2022-07-19 04:28:52
【问题描述】:
我正在创建一个 vue3 应用程序(使用 Vite 创建),它与用 Solidity 编写并存储在 Ropsten 上的智能合约进行交互。因此,我使用 web3js 与我的智能合约和 web3.storage 进行交互,以便在 IPFS 上存储一些图像。我的项目根目录中有一个 .env 文件,用于存储我的 web3.storage 的 API 密钥:
VUE_APP_API_TOKEN=VALUE
VITE_API_TOKEN=VALUE
问题显然是 web3.storage 期望 API 令牌存储在 process.env 中,我无法从我的应用程序访问全局 process 变量。我总是收到错误Uncaught ReferenceError: process is not defined。
我认为,这与我使用 Vite 而不是纯 Vue3 有关。
我尝试使用该代码在 vite.config.ts 文件中导出进程 env,但它不起作用:
export default ({ mode }) => {
process.env = { ...process.env, ...loadEnv(mode, process.cwd(), '') };
console.log(process.env.VITE_API_TOKEN) //Works fine: VALUE is logged
console.log(process.env.VUE_APP_API_TOKEN) //Works fine: VALUE is logged
return defineConfig({
plugins: [vue()]
});
}
如何从我的 vue 文件中访问 process 变量以获取我的环境变量的值并使 web3.storage 工作?
【问题讨论】:
-
Docs 可能会有所帮助。
-
@tao 感谢您的提示,我已经尝试过文档但没有帮助
标签: javascript vue.js web3js vite ipfs