问题标签 [openzeppelin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
solidity - ethers 上的 _signTypedData 方法与 ERC712 solidity 代码不匹配
我遇到了一个以太签名无与伦比的问题。
一切正常。已经将 js 代码中的domainData
, types
,message
变量与合约进行了比较。
下面是生成签名和调用合约的 JS 代码。
下面是使用“@openzeppelin/contracts/utils/cryptography/draft-EIP712.sol”的可靠代码
但我在 JS 代码的最后一行出现以下错误。
我的代码有什么问题吗?
compiler-errors - 使用 truffle 编译时出现问题,卡在导入 openzeppelin
我正在做一个关于blockgeeks的教程并且已经被困了几个小时。
这是我在尝试编译我的项目时遇到的错误
这是我的solidity文件的代码。
任何帮助都将不胜感激,因为我为此让自己发疯。我已经卸载并重新安装了 truffle 和 openzeppelin,但仍然没有任何乐趣。
谢谢
solidity - 部署智能合约时,合约的“所有者”(默认情况下)不是部署它的人吗?
我正在尝试在使用 onlyOwner 修饰符的闪贷合同中使用一个函数。当我发送闪贷交易时,我收到错误消息:“调用者不是所有者”。
我使用的帐户与我在运行此快速贷款时用来创建合同的帐户相同,所以我不确定它为什么不承认我是所有者。
您可以在这里看到创建合约和发送失败交易的地址是相同的。 https://kovan.etherscan.io/address/0x91109bde85e0ab631d1983ce07b910ce4e99078a
点击那里的第一笔交易^^查看错误信息。
onlyOwner 修饰符的代码:https ://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/contracts/access/Ownable.sol
合同文件
Withdrawable.sol(withdraw() 函数来自哪里)
smartcontracts - 带有 OpenZeppelin 合约的 Tron 网络
Tron 网络使用 Solidity,与以太坊有很多相似之处。
我正在尝试使用为以太坊设计的 OpenZeppelin 合约在 Tron 网络上运行。
我选择了 tronbox 编译器支持的 Solidity 版本 0.6.x。
是否可以在 Tron 网络上运行 OpenZeppelin 合约?
solidity - Solidity:标识符未找到或不唯一
我正在阅读这个 OpenZeppelin 教程:https ://docs.openzeppelin.com/learn/developing-smart-contracts?pref=truffle并完全按照这些步骤操作。但是,在导入 Auth 合同后编译我的合同时,编译失败,并显示 Identifier not found 或 not unique。
这是我得到的错误:contracts/Box.sol:10:5: DeclarationError: Identifier not found or not unique。验证私人身份验证;^--^
我的目录设置与教程完全相同,其中我在名为 access-control 的目录中有 Auth.sol,但它不起作用。
这是我试图运行的代码:
ethereum - ethers.js 合约实例中没有 safeTransferFrom 函数?
我在安全帽控制台中创建了一个合约实例,如下所示:
合同对象具有所有公共/外部功能,除了safeTransferFrom
. 为什么?
当我用contract.safeTransferFrom(…)
它调用它时,会抛出 JavaScript 错误“safeTransferFrom 不是函数”。这是一个错误还是我不明白什么?safeTransferFrom
功能在 ABI 中列出。
我使用 OpenZeppelin (v. 4.2) 721 令牌模板,Ethers.js (v. 5.4.1) 和 hardhat (v. 2.4.1)。
更新: 问题解决了。safeTransferFrom 是一个重载函数。在 ethers 中,调用重载合约函数的语法与非重载函数不同。 Ethers.js 文档
错误的:
正确的:
ethereum - 如何与已部署的 ERC20(openzeppelin ERC20 合约)代币交互,将代币从用户地址 X 转移到地址 Y?
我创建了一个扩展 openzeppelin ERC20 的简单合约。我正在尝试将令牌从一个地址转移到另一个地址。
合约代码如下:
文件名:Token.sol
测试文件中的代码:
收到错误:
感谢您的帮助。
solidity - 导入 OpenZeppelin 的 ERC721Full.sol 库时出现解析错误
当我尝试使用 truffle 编译我的智能合约时,会出现以下错误:错误解析 @openzeppelin/contracts/token/ERC721/ERC721.sol: ParsedContract.sol:51:72: ParserError: Expected '{' but got reserved关键字“覆盖”。
我的智能合约:
有谁知道如何解决这一问题?我知道这不是一个新问题,但我还没有找到对我有用的堆栈溢出或其他论坛解决方案。提前致谢。
javascript - 未找到请求的合同。确保源代码可用于编译
我正在使用“@openzeppelin/truffle-upgrades”插件来创建可升级的合同。第一次这样做并以他们在其上的网站文章为基础。https://docs.openzeppelin.com/learn/upgrading-smart-contracts
一切编译正确,但是每当我迁移“未找到请求的合同。确保源代码可用于编译”或查看此屏幕截图https://gyazo.com/f4b8d8afea69b67965670b520e48db13时,3_deploy_upgradeable_box.js 都会吐出此错误
这是我的代码
松露配置文件如下
请指导我正确的方向,谢谢。