1.本地安装Remix

npm install -g @remix-project/remixd

2.建立Remix本地文件

remixd -s /path/to/local/dir --remix-ide http://remix.ethereum.org/

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-AxBV7e0W-1642458791856)(C:\Users\86134\AppData\Roaming\Typora\typora-user-images\image-20220118061556780.png)]

3.进入IDE

浏览器打开http://remix.ethereum.org , workspace选择localhost

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8lznY5tC-1642458791857)(C:\Users\86134\AppData\Roaming\Typora\typora-user-images\image-20220118061842543.png)]

到这里已经可以看到remix链接至本地文件夹

4.Github上拉取OpenZeppelin合约库

这里因为我npm安装有问题,所以直接将Github上的contracts文件拉入第二步创建的本地文件夹,用相对路径调用OpenZeppelin合约。

Github:OpenZeppelin/openzeppelin-contracts: OpenZeppelin Contracts is a library for secure smart contract development. (github.com)

只需要把contracts文件拉入第二步关联的本地文件夹即可。

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-h6qoxma3-1642458791857)(C:\Users\86134\AppData\Roaming\Typora\typora-user-images\image-20220118062440883.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0BAKDE1T-1642458791858)(C:\Users\86134\AppData\Roaming\Typora\typora-user-images\image-20220118062522420.png)]

接着打开remixIDE,可以看到目录下已经有该合约库了

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-EkWYlkPR-1642458791859)(C:\Users\86134\AppData\Roaming\Typora\typora-user-images\image-20220118062635041.png)]

5.调用OpenZeppelin内的合约

使用相对路径引入合约,就可以使用了

pragma solidity ^0.8.7;

import "../zp/contracts/token/ERC721/ERC721.sol";
import "../zp/contracts/access/Ownable.sol";
contract OwnableContract is Ownable {

  function restrictedFunction() public onlyOwner returns (uint) {
    return 99;
  }

  function openFunction() public returns (uint) {
    return 1;
  }

}

另外附一下OpenZeppelin文档:

https://docs.openzeppelin.com/contracts/4.x/access-control

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐