加密狗空投教程187– Scroll测试网最全指南

Scroll 最近成功从 Polychain 资本、红杉资本等知名 VC 筹集了 5000 万美元。总体而言,Scroll 成功筹集了 8300 万美元。Scroll 现在估值为 $ 1,8 BScroll 是基于以太坊上 zkEVM 的 zkRollup,提供与现有以太坊应用程序和工具的原生兼容性

image-1678766376673

Scroll 最近成功从 Polychain 资本、红杉资本等知名 VC 筹集了 5000 万美元。总体而言,Scroll 成功筹集了 8300 万美元。

Scroll 现在估值为 $ 1,8 B

Scroll 是基于以太坊上 zkEVM 的 zkRollup,提供与现有以太坊应用程序和工具的原生兼容性。简单来说,它是一个新的以太坊第 2 层网络。

目前,alpha 测试网阶段正在进行中,在 pre-alpha 版本期间,实现了 100 万个唯一地址和 1600 万笔交易

往期教程:

加密狗空投教程095 – 参与以太坊创始人 3300 万美元投资的项目 — Scroll测试网教程

一、准备

步骤1、登录官网、链接测试网

登录:https://scroll.io/alpha

将网络(Goerli 测试网和 Scroll Alpha 测试网)添加到 metamask 钱包

image-1678766463768

步骤2、领取测试网代币

使用https://goerlifaucet.com/ 领取测试网代币

image-1678766481186

二、Bridge

登录桥接部分:https://scroll.io/alpha/bridge

将 ETH 从 goerli testnet 发送到 Scroll Alpha testnet 网络

image-1678766500245

image-1678766578001

让小狐狸向任何其他钱包发送少量金额。

image-1678766591622

image-1678766612491

image-1678766626306

现在我们需要从Scroll Alpha testnet中提取少量ETH回Goerli网络,

返回桥接部分,并确保在 Scroll Alpha 测试网上并发送给 Goerli。

image-1678766639327

三、添加流动性

要获得 testnet USDC 代币,请点击此处,并从水龙头领取 USDC;

image-1678766666157

点击这里,兑换 USDC(可以添加 USDC 合约 0xA0D71B9877f44C744546D649147E3F1e70a93760)

image-1678766693767

将少量的 ETH 换成 USDC

image-1678766709852

点击这里,并创建+new position,以便添加流动性

image-1678766727862

选择 ETH — USDC对,选择 0.3% 和全范围

image-1678766740761

然后点击 I Understand

image-1678766754763

输入要添加的金额并确认所有操作

image-1678766766077

image-1678766771048

按关闭

image-1678766783375

现在看到我们的位置,可以删除一小部分

image-1678766794945

点击Remove liquidity

image-1678766806021

移除 25% 的流动性

image-1678766818195

到这里我们完成了最简单的部分,下一步是智能合约部署

四、部署智能合约

点击此处,按照如下所示进行操作:

1、 单击图标

2、写合约名称

3、点击空白处

image-1678766878162

从这里复制此代码,官方文件

// SPDX-License-Identifier: MIT
pragma solidity ^0.8.4;
contract FunctionTypes{
    uint256 public number = 5;
    constructor() payable {}

// 函数类型
// function () {internal|external} [pure|view|payable] [returns ()]
// 默认function
function add() external{
number = number + 1;
}
// pure: 纯纯牛马
function addPure(uint256 _number) external pure returns(uint256 new_number){
new_number = _number+1;
}

// view: 看客
function addView() external view returns(uint256 new_number) {
    new_number = number + 1;
}
// internal: 内部
function minus() internal {
    number = number - 1;
}
// 合约内的函数可以调用内部函数
function minusCall() external {
    minus();
}
// payable: 递钱,能给合约支付eth的函数
function minusPayable() external payable returns(uint256 balance) {
    minus();    
    balance = address(this).balance;
}

}

单击空白区域并使用命令粘贴代码:

MAC 用户cmnd + V

Windows用户 ctrl + V

image-1678777401594

image-1678777414184

MAC 用户按cmnd + S

Windows 用户按ctrl + S

现在你应该看到绿色复选标记,如下所示:

image-1678777431505

点击,如下所示

image-1678777443486

1、将版本更改为最新

2、点击编译

image-1678777463313

如果一切顺利,应该会看到绿色复选标记,如下所示

image-1678777478213

按照如下所示的步骤操作:

1、单击图标

2、选择 Injected provider (metamask)

3、确保你在Scroll Alpha 网络上,并检查地址是否正确

4、点击部署

image-1678778035585

在 Metamask 中签名

image-1678778053295

如果合约部署成功,我们将看到如下所示的消息,我们也可以在小狐狸中看到它。

image-1678778079539

image-1678778093090

到这里,我们就已经在 Scroll Alpha 测试网上部署了智能合约。

五、创建你自己的代币

此操作将类似于之前的操作(部署智能合约)

点击这里,按照如下所示的步骤操作

image-1678778115684

复制此代码

// SPDX-License-Identifier: MIT
// WTF Solidity by 0xAA
pragma solidity ^0.8.4;
interface IERC20 {
  /**
   * @dev 释放条件:当 `value` 单位的货币从账户 (`from`) 转账到另一账户 (`to`)时.
   */
  event Transfer(address indexed from, address indexed to, uint256 value);
  /**
   * @dev 释放条件:当 `value` 单位的货币从账户 (`owner`) 授权给另一账户 (`spender`)时.
   */
  event Approval(address indexed owner, address indexed spender, uint256 value);
  /**
   * @dev 返回代币总供给.
   */
  function totalSupply() external view returns (uint256);
  /**
   * @dev 返回账户`account`所持有的代币数.
   */
  function balanceOf(address account) external view returns (uint256);
  /**
   * @dev 转账 `amount` 单位代币,从调用者账户到另一账户 `to`.
   *
   * 如果成功,返回 `true`.
   *
   * 释放 {Transfer} 事件.
   */
  function transfer(address to, uint256 amount) external returns (bool);
  /**
   * @dev 返回`owner`账户授权给`spender`账户的额度,默认为0。
   *
   * 当{approve} 或 {transferFrom} 被调用时,`allowance`会改变.
   */
  function allowance(address owner, address spender) external view returns (uint256);
  /**
   * @dev 调用者账户给`spender`账户授权 `amount`数量代币。
   *
   * 如果成功,返回 `true`.
   *
   * 释放 {Approval} 事件.
   */
  function approve(address spender, uint256 amount) external returns (bool);
  /**
   * @dev 通过授权机制,从`from`账户向`to`账户转账`amount`数量代币。转账的部分会从调用者的`allowance`中扣除。
   *
   * 如果成功,返回 `true`.
   *
   * 释放 {Transfer} 事件.
   */
  function transferFrom(
      address from,
      address to,
      uint256 amount
  ) external returns (bool);
}
contract ERC20 is IERC20 {
  mapping(address => uint256) public override balanceOf;
  mapping(address => mapping(address => uint256)) public override allowance;
  uint256 public override totalSupply;   // 代币总供给
  string public name;   // 名称
  string public symbol;  // 符号
  uint8 public decimals = 18; // 小数位数
  address public owner;
  // @dev 在合约部署的时候实现合约名称和符号
  constructor(string memory name_, string memory symbol_){
      name = name_;
      symbol = symbol_;
      owner = msg.sender;
  }
  // @dev 实现`transfer`函数,代币转账逻辑
  function transfer(address recipient, uint amount) external override returns (bool) {
      balanceOf[msg.sender] -= amount;
      balanceOf[recipient] += amount;
      emit Transfer(msg.sender, recipient, amount);
      return true;
  }
  // @dev 实现 `approve` 函数, 代币授权逻辑
  function approve(address spender, uint amount) external override returns (bool) {
      allowance[msg.sender][spender] = amount;
      emit Approval(msg.sender, spender, amount);
      return true;
  }
  // @dev 实现`transferFrom`函数,代币授权转账逻辑
  function transferFrom(
      address sender,
      address recipient,
      uint amount
  ) external override returns (bool) {
      allowance[sender][msg.sender] -= amount;
      balanceOf[sender] -= amount;
      balanceOf[recipient] += amount;
      emit Transfer(sender, recipient, amount);
      return true;
  }
  // @dev 铸造代币,从 `0` 地址转账给 调用者地址
  function mint(uint amount) external {
      require(owner == msg.sender);
      balanceOf[msg.sender] += amount;
      totalSupply += amount;
      emit Transfer(address(0), msg.sender, amount);
  }
  // @dev 销毁代币,从 调用者地址 转账给  `0` 地址
  function burn(uint amount) external {
      balanceOf[msg.sender] -= amount;
      totalSupply -= amount;
      emit Transfer(msg.sender, address(0), amount);
  }
}

单击空白区域(与我们在部署智能合约时所做的相同)

MAC 用户cmnd + V

Windows 用户ctrl + V

粘贴代码,然后确定

image-1678778207818

Mac 用户按cmnd + S

Windows 用户按ctrl + S。

我们应该看到绿色复选标记,如下所示

image-1678778254807

按照如下所示的步骤操作:

1、点击图标

2、选择最新版

3、编译。

在我们应该看到绿色复选标记之后

image-1678778270932

按照如下所示的步骤操作:

1、点击最后一个图标

2、injected provider

3、你的地址将自动被添加(这里要检查地址是不是对的)

4、点击injected provider

5、写下名字

6、写下Symbol

7、点击transact

并确认你钱包中的所有操作。

image-1678778285446

如果一切顺利,你将在控制台和钱包中看到它

image-1678778305210

单击交易记录器,如下所示

image-1678778318542

按照如所示的步骤操作:

1、打开 ERC20 AT…. Menu

2、打开 Mint 菜单

3、输入金额 1800000000000000000000

4、点击交易

钱包验证

image-1678778333805

如果一切顺利,将收到如下所示的消息

image-1678778347815

复制你的代币地址

image-1678778367345

可以使用我们自己的代币添加流动性

登录:https://uniswap-v3.scroll.io/#/pool

点击:new position

image-1678778408485

选择token

image-1678778424463

粘贴你的代币地址(之前复制的)

image-1678778439357

可以使用如下所示的相同设置

image-1678778450773

image-1678778456143

钱包确认

如果一切顺利,你应该会看到如下所示:

image-1678778470137

到这里基本完成了Scroll的全部操作。

以上就是本篇 的全部内容;

更多内容请关注:

加密狗推特:https://twitter.com/JiamigouCn

电报:https://t.me/JIAMIGOU002

给TA打赏
共{{data.count}}人
人已打赏
评测攻略

加密狗空投教程186 -- Celestia 轻节点安装教程

2023-3-14 16:38:28

评测攻略

加密狗空投教程188 -- 获得1.2亿美元融资的5ire Wallet测试网空投教程

2023-3-14 16:38:42

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索