我们已经创建了一个Admin来访问所有的契约方法,但是现在我们还需要从Admin中为不同的业务场景进行一次单击部署。在我们的管理中,我们需要一个混合Ide接口,其中管理员用户可以粘贴他们的智能契约,并且可以通过前端使用Metamask部署。有办法做到这一点吗?
我知道编译和字节码生成也需要后端,这不是一个问题,但它应该在不需要私钥的情况下工作。从部署人员那里。
它应该是这样的:
发布于 2022-04-18 17:49:05
您也可以使用索尔克 NPM包在前端编译契约。
注意,GitHub回购名为solc-js,但NPM包只是solc__。还有一个名为solc-js的NPM方案,似乎被抛弃了。
契约部署只不过是发送带有特定params的事务。具体来说,省略了to字段,而data字段是编译过的字节码。
您可以使用请求 MetaMask来签署一个事务:
const params: [{
from: '0x<userAddress>',
data: '0x<contractBytecode>',
}];
const txHash = await ethereum.request({
method: 'eth_sendTransaction',
params,
})要获得他们的地址,您首先需要他们到连接 MetaMask到您的应用程序。
https://stackoverflow.com/questions/71914875
复制相似问题