VSCode使用Code Runner运行JS函数报ReferenceError未定义如何解决
报错原因说明
你当前触发报错的核心原因是:仅选中函数名getTokenBalance运行时,Code Runner会将你选中的内容单独生成临时JS文件调用Node执行,该临时文件内没有对应的函数定义逻辑,自然会抛出未定义的错误。同时你提供的函数本身依赖项目内的全局变量,单独运行还需要补充依赖配置,完整解决方案如下:
解决步骤
1 修复运行代码逻辑
你需要同时选中完整的函数定义+函数调用代码再运行,示例代码结构如下:
// 先引入web3依赖,解决全局变量缺失问题 const Web3 = require('web3'); // 替换为你实际使用的链RPC节点地址,比如以太坊、BSC对应的公开节点 const web3 = new Web3('https://你的RPC节点地址'); // 你原来的getTokenBalance函数完整定义 async function getTokenBalance(wallet_address, token_address) { // 此处保留你的原有函数逻辑不变 // ... // 测试时注释掉GMS_API调用,Node环境无该GameMaker专属API // GMS_API.send_async_event_social(map); console.log('最终输出结果:', map); } // 新增函数调用,替换为你的测试参数 getTokenBalance("测试钱包地址", "测试代币地址");
2 安装依赖
打开VSCode终端,切换到你的项目根目录,执行命令安装web3依赖:npm install web3
3 运行测试
选中上述完整的代码段,或者直接保存为独立JS文件后右键点击「Run Code」即可正常执行。
可选优化方案
如果需要频繁测试该函数,可以直接把上述完整代码保存为单独的测试用JS文件,不用每次选中代码,直接在文件空白处右键点击「Run Code」即可运行,修改参数直接改调用处的入参即可。
内容的提问来源于stack exchange,提问作者Nukage
相关产品推荐
相关产品推荐

