openzeppelin升级体验
创建项目
npm install -g @openzeppelin/cli
oz --version
mkdir hello-oz
cd hello-oz
npm init -y
oz init
npm install @openzeppelin/upgrades --save部署
// SPDX-License-Identifier: UNLICENSED
pragma solidity ^0.6.0;
import "@openzeppelin/upgrades/contracts/Initializable.sol";
contract HelloOz is Initializable {
string public name;
uint256 public dec;
uint256 public inc;
function initialize(string memory _name) initializer public {
name = _name;
}
function decrement(uint256 x) public returns (uint256) {
return dec = x - 1;
}
function increment(uint256 x) public returns (uint256) {
return inc = x + 1;
}
}


升级


Last updated