javascript - 我的 compile.js 文件中有一个关于 Solidity 项目的问题
问题描述
这是我的文件目录
-Inbox
--contracts
---Inbox.sol
--node modules
--compile.js
--deploy.js
--package.json
--test
---Inbox.test.js
这是我的 compile.js 文件
const path = require('path');
const fs = require('fs');
const solc = require('solc');
const inboxPath = path.resolve(__dirname, 'contracts', 'Inbox.sol');
const source = fs.readFileSync(inboxPath, 'utf8');
const options = {
language: 'Solidity',
sources: {
'Inbox.sol': {
content: source
}
},
settings: {
outputSelection: {
'*': {
'*': ['*']
}
}
}
};
const compiledRaw = solc.compile(JSON.stringify(options));
const compiledObj = JSON.parse(compiledRaw);
const compiledInboxContract = compiledObj.contracts['Inbox.sol']['Inbox'];
console.log(compiledInboxContract);
module.exports = compiledInboxContract;
这是我从终端的输出。
sohampadia@localhost inbox]$ node deploy.js
/home/sohampadia/solidityprojs/inbox/compile.js:25
const compiledInboxContract = compiledObj.contracts['Inbox.sol']['Inbox']
^
TypeError: Cannot read property 'Inbox.sol' of undefined
at Object.<anonymous> (/home/sohampadia/solidityprojs/inbox/compile.js:25:54)
at Module._compile (internal/modules/cjs/loader.js:1063:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
at Module.load (internal/modules/cjs/loader.js:928:32)
at Function.Module._load (internal/modules/cjs/loader.js:769:14)
at Module.require (internal/modules/cjs/loader.js:952:19)
at require (internal/modules/cjs/helpers.js:88:18)
at Object.<anonymous> (/home/sohampadia/solidityprojs/inbox/deploy.js:3:33)
at Module._compile (internal/modules/cjs/loader.js:1063:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
at Module.load (internal/modules/cjs/loader.js:928:32)
at Function.Module._load (internal/modules/cjs/loader.js:769:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
at internal/main/run_main_module.js:17:47
如果你想要更多的细节,我很乐意给你。我的一些文件的详细信息在我的帖子中,我在运行我为solidity 项目制作的deploy.js 文件时遇到了一个assert.js:383 throw 错误。我应该怎么办?
解决方案
推荐阅读
- vb.net - 如何使用 WorkingDirectory 和 shellExecute = false 在 vb.net 中运行 Powershell 脚本
- javascript - javascript调用方法的问题
- css - CSS - 输入字段背景颜色
- c# - 在 Excel VBA 中使用 COM 插件中的 CLR 类?
- python-3.x - 从多处理中使用Pool时如何获取函数中的进程号
- python-3.x - 如何将查询结果转换为python中的字典
- python - 如何在同一行显示11个描述性统计变量
- python-3.x - 如何在自动使用模式下获取 pytest 夹具返回值?
- python - 如何找到乘以浮点数列表时使所有值都为整数的最小整数?
- c# - 为什么允许我们在条件运算符的 else 子句中使用由“is”表达式定义的参数?