精华内容
下载资源
问答
  • Remix在线编辑器链接:https://ethereum.github.io/browser-solidity 1、打开编辑器后。把合约代码复制到编辑器中(这里用我的上一个博客的ERC20高级代币源码) Start to compile编译合约代码、如果没有报错就可以了...

    Remix在线编辑器链接:https://ethereum.github.io/browser-solidity

    1、打开编辑器后。把合约代码复制到编辑器中(这里用我的上一个博客的ERC20高级代币源码)

    Start to compile编译合约代码、如果没有报错就可以了。

    2、切换到Run标签。选择网络环境:Injected Web3 

    注:这里需要安装以太坊谷歌插件metamask的轻钱包 http://8btc.com/thread-76137-1-5.html

    3、填写发行的代币数量 、代币的名称、代币的简称。

    4、点击Create按钮。会出现metamask钱包支付页面需支付矿工费用,我们直接点击CONFIRM确认按钮

    5、提交成功后metamask钱包会出现交易记录:

    6、点击这条交易记录查看发布是否成功。Contract Deployment 这时会打开区块链浏览器,这时我们看到 发布的这个合约正在

    Pending状态。成功后为变为 Success 状态。

    合约发布成功后,我们可以看见我们的发现的代币合约地址。把这个地址保存下来或者直接点击这个合约地址链接。

    会看到这个合约代币的详情。

    7、成功后Remix编辑器会出现合约中可以执行的方法:

    8、我们在metamask钱包中添加我们的发行的合约代币。打开我们的metamask钱包,选择左上角的切换按钮

    8.2 在点击页面中的 ADD TOKEN按钮

    8.3 打开页面后选择 Custom Token标签 输入我们的代币合约地址。就会出现我们的代币属性了。点击NEXT按钮

    8.4 点击Add Tokens

    8.5 此时钱包中就会出现我们的代币余额了。点击 SEND 就可以开始交易了。

    8.6点击 SEND 转账 To 填写收款账号 Amount 填写转账数量。在点击NEXT

    8.7 点击确认按钮确认转账。

    8.8 metamask钱包页面就会出现这笔转账记录。直接点击这笔转账记录就可以直接跳转到浏览器查看转账详情。

    转账成功后。你可以查看你的钱包余额已经减少了10TTN代币

    其他增发、冻结、查询余额的方法可以直接在Remix编辑器里面测试。

     

    学如逆水行舟,不进则退。心似平原跑马,易放难收。全栈工程师是指掌握多种技能,并能利用多种技能独立完成产品的人。 也叫全端工程师(同时具备前端和后台能力),英文Full Stack engineer。【人工智能】【区块链】【系统/网络/运维】【云计算/大数据】【数据库】【移动开发】【后端开发】【游戏开发】【UI设计】【微服务】【爬虫】【Java】【Go】【C++】【PHP】【Python】【Android/IOS】【HTML/CSS】【JavaScript】【Node】。欢迎各位大神萌新一起专研分享技术。。。

     

    欢迎加入 IT全栈工程师技术交流群:593674370

    展开全文
  • Solidity语言编辑器REMIX指导大全

    千次阅读 2018-07-10 15:22:47
    文章摘要本文目标:本文翻译和实践...技术收获:使用REMIX编辑器进行Solidity语言编程,编译,运行,调试。REMIX界面介绍2 使用REMIX编辑器执行”HELLO WORLD”的智能合约REMIX是一个智能合约编程语言Solidi...
    
    

    文章摘要

    本文目标:本文翻译和实践Solidity语言编辑器REMIX官网帮助文档,但并不拘泥于逐字翻译,而时根据实践用中文语言讲透编辑器相关功能。

    前置条件:了解以太坊ETH和Solidity语言。

    技术收获:

    • 使用REMIX编辑器进行Solidity语言编程,编译,运行,调试。

    • REMIX界面介绍

      使用REMIX编辑器执行”HELLO WORLD”的智能合约

    REMIX是一个智能合约编程语言Solidity的集成开发环境。

    最简单的入门就是进行”HELLO WORLD”的程序运行。

    2.1 智能合约编译

    在CHROME浏览器上点击链接REMIX官网浏览器版编辑器(http://remix.ethereum.org/)即可打开REMIX编辑器。部分不能正常访问官网的,可以访问笔者的国内REMIX编辑器(http://remix2.ju3ban.net/)。

    新增一个命名为“HelloWorld.sol”的文件,复制以下代码:

    pragma solidity ^0.4.17;
    
    contract Hello         
    
    {    
    
    address creator;         
    
    string greeting;         
    
    function Hello(string _greeting) public       
    
    {        
    
    creator = msg.sender;        
    
    greeting = _greeting;    
    
    }        
    
    function greet() public constant returns (string)               
    
    {
    
    return greeting;    
    
    }        
    
    function setGreeting(string _newgreeting) public    
    
    {        
    
    greeting = _newgreeting;    
    
    }         
    
    /**********     
    
    Standard kill() function to recover funds      
    
    **********/        
    
    function kill() public    
    
    {         
    
    if (msg.sender == creator)            
    
    suicide(creator);  // kills this contract and sends remaining funds back to creator    
    
    }
    
    }

    点击”Start to compile”按钮,会得到一下结果:

    image

    智能合约编译

    除一些函数的告警提示外,结果表明该智能合约编译成功。

    2.1.1 编译告警

    如果编写的程序有告警,REMIX会有提示。一般来说,提示不必修改。

    image

    REMIXD编译告警

    2.1.2 编译错误

    为了说明编译错误案例,把该文件的第17行”return greeting;”改为”return _greeting;”, 重新编译,得到以下结果

    image

    REMIXD编译错误

    如果编写的Solidity程序存在语法错误,Remix编译器会以粉红色底色提示显示错误原因,并在编辑器窗口提示位置。

    编译错误演示完后,恢复第17行代码为”return greeting;”

    2.1.3 详情信息

    点击”Detail”按钮,可以看到详细信息。其中WEB3DEPLOY部分的内容就是在案例《第二课 如何实现以太坊最简智能合约“Hello World”的运行》(https://www.jianshu.com/p/2a5d60744988)中geth控制台使用的编译后代码。

    image

    DETAIL的内容

    2.2 智能合约运行

    2.2.1 创建智能合约

    选择“Run”的页面,选择Environment环境为Javascript VM,在“Create”按钮前输入框内输入”Hello World!”[注意:输入字符串一定要有英文双引号],点击“Create”按钮。

    image

    创建智能合约

    2.2.2 运行greet函数

    点击浅蓝色函数”greet”按钮,可以看到输出结果为“Hello World!”

    image

    运行函数greet

    说明:浅蓝色按钮函数表示该交易函数运行时不需要消耗GAS的。

    2.2.3 运行setGreeting函数

    在setGreeting函数按钮的输入框输入内容”Hello Duncan!”, 运行后在点击执行”greet”函数,发现该函数的输出内容已变为”Hello Duncan!”了,说明setGreeting执行正常。

    image

    运行函数SetGreeting

    说明:粉红色按钮函数表示该交易函数运行时是需要消耗GAS的。

    3

    REMIX界面详解

    第2章以“Hello World”为例,介绍了REMIX集成环境的基本使用方法。本章介绍REMIX编辑器的详细功能描述。

    3.1 REMIX集成环境概述

    REMIX是一个智能合约编程语言Solidity的集成开发环境,它集成了一个调试器和测试环境。

    如果你对以下内容感兴趣,REMIX是一个不错的学习方式:

    • 开发智能合约(REMIX集成了SOLIDITY编辑器)

    • 调试智能合约

    • 获取已运行合约的状态和属性

    • 调试已经提交的合约

    • 分析SOLIDITY代码,以便减少编码错误和加强最佳实践

    • 配合Mist(或者任何植入web3的工具),REMIX可用于测试和调试DAPP分布式程序。(参考链接Debugging a Dapp using Remix - Mist - Geth )(https://remix.readthedocs.io/en/latest/tutorial_mist.html

    详解介绍使用的程序案例为”ballot.sol”文件的代码,完整代码如下:

    pragma solidity ^0.4.0;
    
    contract Ballot {    
    
    struct Voter {        
    
    uint weight;        
    
    bool voted;        
    
    uint8 vote;        
    
    address delegate;    
    
    }    
    
    struct Proposal {        
    
    uint voteCount;    
    
    }    
    
    address chairperson;    
    
    mapping(address => Voter) voters;    
    
    Proposal[] proposals;    
    
    /// Create a new ballot with $(_numProposals) different proposals.    function Ballot(uint8 _numProposals) public {        
    
    chairperson = msg.sender;       
    
     voters[chairperson].weight = 1;        
    
    proposals.length = _numProposals;    
    
    }    
    
    /// Give $(toVoter) the right to vote on this ballot.   
    
    /// May only be called by $(chairperson).    
    
    function giveRightToVote(address toVoter) public {        
    
    if (msg.sender != chairperson || voters[toVoter].voted) return;        
    
    voters[toVoter].weight = 1;    
    
    }    
    
    /// Delegate your vote to the voter $(to).    
    
    function delegate(address to) public {        
    
    Voter storage sender = voters[msg.sender]; // assigns reference        if (sender.voted) return;        
    
    while (voters[to].delegate != address(0) && voters[to].delegate != msg.sender)            
    
    to = voters[to].delegate;        
    
    if (to == msg.sender) return;        
    
    sender.voted = true;        
    
    sender.delegate = to;        
    
    Voter storage delegateTo = voters[to];        
    
    if (delegateTo.voted)            
    
    proposals[delegateTo.vote].voteCount += sender.weight;        
    
    else            
    
    delegateTo.weight += sender.weight;    
    
    }    
    
    /// Give a single vote to proposal $(toProposal).    
    
    function vote(uint8 toProposal) public {        
    
    Voter storage sender = voters[msg.sender];       
    
     if (sender.voted || toProposal >= proposals.length) return;        
    
    sender.voted = true;        
    
    sender.vote = toProposal;        
    
    proposals[toProposal].voteCount += sender.weight;    
    
    }    
    
    function winningProposal() public constant returns (uint8 _winningProposal) {        
    
    uint256 winningVoteCount = 0;       
    
     for (uint8 prop = 0; prop < proposals.length; prop++)            
    
    if (proposals[prop].voteCount > winningVoteCount) {                winningVoteCount = proposals[prop].voteCount;                _winningProposal = prop;           
    
     }    
    
    }
    
    }

    REMIX主界面截图如下,具体说明参考各个子章节。

    image

    REMIX主界面截图

    3.2 文件浏览器

    image

    文件浏览器

    1)增加新文件(Create new File)

    点击在浏览器上增加一个新的智能合约文件

    image

    增加新文件

    2)打开文件(Add Local File)

    image

    打开存在文件

    3) 匿名发布到GitHub(Publish to Gist)

    image

    匿名发布到GitHub

    4) 复制文件列表到其他浏览器(Copy to another instance)

    例如,把“http://remix2.ju3ban.net”的文件列表复制到另一个浏览器“http://remix.ju3ban.net

    修改输入目标浏览器的网址:

    image

    复制到别的浏览器

    打开新的浏览器,文件列表已复制过来了:

    image

    别的浏览器的文件列表

    5)链接本地服务器(Connect to Localhost)

    在Remix文件浏览器上的文件并不会同步到本地文件系统,对浏览器文件列表的新增/修改/删除并不会同步本地文件。一般操作时,调试成功的代码需要在本地文件系统新建文件保存。Remix浏览器提供了一种方法,就是使用Remixd,允许保存和同步浏览器文件到你的本地计算机中。因为根据官网文档,笔者没有能够在Windows 10系统或者Ubuntu中安装成功Remixd,本文不再详细介绍该功能。有兴趣的朋友欢迎根据官网文档()尝试使用REMIXD同步。成功者欢迎跟辉哥反馈交流,补充完整这个文档。

    image

    链接本地文件系统

    3.3 Solidity语言编辑器

    image

    Solidity 浏览器

    Solidity语言编辑器重要的功能列表:

    • TAB页面显示打开的文件

    • 编译告警或者错误会显示在编辑器最左侧边

    • Remix自动保存当前文件(修改后5秒内)

    • +/- 表示增加/减少编辑器的字体大小

    3.4 终端输出器

    image

    终端输出器窗口

    终端输出器功能说明:

    • 点击1按钮可隐藏终端输出器

    • 点击2按钮可情况输出器内容

    • 点击3按钮可复制地址信息等到缓存,便于粘贴

    • 点击Details按钮可展开交易详细内容

    • 点击Debug按钮可调试该交易合约

    • 点击复选框,可增加选择显示所有的交易还是只显示智能合约相关的交易程序。默认只显示后者。

    image

    终端显示内容

    • 输入关键字可搜索定位输出内容 
      例如输入”Hello “关键字,相关的内容就显示出来了。

    image

    搜索Hello关键字

    • 监听网络(Listen to network) 
      勾选后,REMIX不仅监听REMIX编辑器中创建的交易,还监听当前环境中所有的交易。

    3.5 分页控制面板

    3.5.1 编译合约

    image

    Compile控制面板

    发布到Swarm网络(Publish on Swarm)

    点击“Publish on Swarm”按钮可把智能合约源码和对应的ABI信息发布到网络上。这个合约智能是非抽象类的才能发布。

    合约发布后,你可以点击Detail按钮,在弹出窗口的“SWARM LOCATION”

    位置找到对应的MetaDATA信息。

    信息中的SWARM LOCATION位置有对应网址,在能科学上网的计算机就可找到该合同的MetaData信息 “bzzr://165fad4c3d8ead3a7fe28296777b4bedafb09bb57de2e9ba39c1547866437182”

    3.5.2 运行

    image

     Run控制面板

    重点特性说明

    1) 环境选择

    JavaScript VM: 所有交易在浏览器的沙盒中被执行。这以为着没有结果是永久保存的。当页面重载后,一个新的区块链会被从零开始运行,老的会被丢弃。

    Injected Provider: Remix将连接被植入的Web3对象。例如Mist或者Metamask钱包是提供植入的Web3对象的例子。例如《第八课 如何调试以太坊官网的智能合约众筹案例》(https://www.jianshu.com/p/c7c87c7ad74f)就是使用Meta的账号。

    Web3 Provider: Remix将连接到一个远程节点。你可以用这个地址来选择钱包客户端:geth, parity or any Ethereum client.

    2) 初始化合约

    创建合约

    “Create”按钮用于创建合约。合约创建时,需要参考左边构建函数定义(智能合约的同名函数为构建函数)的类型来输入参数。

    image

    创建合约

    注意:如果输入参数为地址或者字符串,都需要使用英文双引号(“”)囊括起来,使用英文(“,”)表示输入参数分割。

    运行合约

    假设给出的地址是一个选择合同的实例。通过这种方法就可以跟已经运行的合同进行交互。要特别谨慎使用该功能,因为系统不做验证。运行时要确认信任这个地址的合同。

    等待(pending)合约

    image

    挂起合约

    等待合约表示还没有完成执行过程的合约。按钮功能描述参考上述附件。

    3.5.1.1 Web3 Provider远程节点配置

    1) 启动Ganache客户端。不熟悉的,可参考该篇文章的对应关键字“在WINDOWS上安装Ganache”安装好客户端(https://www.jianshu.com/p/683ea7d62a39)。

    image

    启动Ganache客户端

    2) 输入Web3 Provider远程节点,例如Ganache的签宝地址为“HTTP://127.0.0.1:7545

    image

    输入WEB3 privider的服务器地址

    3) 输入完成后,Remix的账号列表更新为Ganache的账号列表了。

    账号为Ganache的账号列表

    3.5.3 调试

    调试/回滚和单步调试是一个很重要的功能,点击《第九课 如何在Remix环境下进行Solidity代码单步调试》(https://www.jianshu.com/p/a2502274b092)文章查看。

    3.5.4 设置

    Settiongs

    重要特性说明:

    • Solidity version:编译SOLIDITY版本,不调整的话系统会默认选择最新正式发布的版本。

    • Always use Ethereum VM at Load:勾选此项会在重新加载时默认选择JavaScript VM环境。

    • Enable Optimization:勾选此项会节省运行GAS,JVM等测试环境可不用勾选。

    3.5.5 分析

    分析面板显示的是最后一次编译的信息,默认情况下每一次编译都会产生一个新的分析。

    这个分析面板显示的是合约代码的详细信息,它可以帮助你避免代码错误或者增强编码能力。

    Analysis页面

    Security: 
    Transaction origin: 如果tx.origin被使用则会告警; 
    Check effects: 避免潜在的可重入性BUG; 
    Inline assembly:  使用植入汇编方式; 
    Block timestamp: Semantics maybe unclear; 
    Low level calls: Semantics maybe unclear; 
    Block.blockhash usage: 自毁调用;

    Gas & Economy: 
    Gas costs: 函数的GAS消耗太高会告警。 
    This on local calls: 勾选后本地函数会被唤醒;

    Miscellaneous: 
    Constant functions: 检查潜在的常量函数 
    Similar variable names: 检查变量名是否太相似

    Miscelllaneous下方显示的是本次编译的优化告警,供程序员优化代码使用。

    Analysis页面2

    3.5.6 支持

    支持页面,可点击需求技术支持和交流。

    remix_supporttab

    4

    典型错误介绍

    4.1 REMIX编译器官网链接打不开

    提示内容:点击官网链接(http://remix.ethereum.org),如果打不开或者有错误提示“mock compiler: source not found”

    原因分析: 这个主要是不能科学上网引起官网浏览器不能下载完全。

    解决办法:

    1,参考欧阳哥哥的文章《【以太坊开发】Remix IDE本地部署与配置个性风格》完成本地REMIX的部署; 
    2,采用一个已国内部署的REMIX浏览器链接:http://remix2.ju3ban.net

    4.2 参数转换失败

    提示内容: 终端输出器显示为“transact to Donation.moveFund errored: Error encoding arguments: Error: Assertion failed ”

    原因分析: 
    Solidity函数定义为”function moveFund(address _to, uint _amount)”

    RUN面板的函数输入参数如下,希望转移5个ETH给目标账号。

    “0x14723a09acff6d2a60dcdf7aa4aff308fddc160c”,500000000000000

    结果提示错误。

    这个原因主要是因为”5 *10^18”的值超过了计算器的范围,需要增加”“来让程序进行转换。Solidity的默认单位为wei,1 ETH = 1*10^18 wei。

    解决办法: 
    输入参数改为2个参数均有双引号则不会有错误提示。

    “0x14723a09acff6d2a60dcdf7aa4aff308fddc160c”,”500000000000000”

    在remix中,任何输入参数都可以带”“表示。

    5

    参考文档

    REMIX英文官网帮助文档(http://remix.readthedocs.io/en/latest/

    【以太坊开发】Remix IDE本地部署与配置个性风格(https://www.jianshu.com/p/afdee36ccbc0

    SOLIDITY语言官网中文版(http://solidity-cn.readthedocs.io/zh/develop/solidity-in-depth.html

    展开全文
  • 这两天打开remix浏览器后点击合约编译就提示一下 翻译过来就是编辑器加载,然后语言选择那边也只有一个0.7.4的版本可以选择,根据网上的教程下载npm等什么方法都没有结果,还有docker镜像也是一样的结果,然后看到有...
  • 2、Solidity IDE Remix编辑器及终端 Solidity IDE Remix中间区域为上下布局,分别提供文件编辑功能和终端访问功能。 2.1 Remix文件编辑器 Solidity IDE Remix中间区域上方的文件编辑器支持同时打开多个文件,...

    Remix是以太坊官方开源的Solidity在线集成开发环境,可以使用Solidity语言在网页内完成以太坊智能合约的在线开发、在线编译、在线测试、在线部署、在线调试与在线交互,非常适合Solidity智能合约的学习与原型快速开发。

    Solidity IDE中文版Remix由汇智网提供,国内CDN加速,访问地址:http://remix.hubwiz.com

    如果要快速掌握以太坊智能合约与DApp开发,推荐汇智网的以太坊开发系列教程

    Solidity IDE Remix为左中右三栏布局,左面板为Remix文件管理器,中间为文件编辑器, 右侧为开发工具面板:

    solidity ide remix

    1、Solidity IDE Remix文件管理器

    Remix左面板中的文件管理器,用来列出在浏览器本地存储中保存的文件,分为browser和config两个目录, 当你第一次访问Remix的时候,在browser目录下有两个预置的代码:ballot.sol合约以及对应的单元测试 文件ballot_test.sol,点击文件名就可以在中间的文件编辑器中查看并编辑代码:

    solidity ide remix file explorer

    Remix文件管理器顶部的工具栏提供创建新文件、上传本地文件、发布gist等快捷功能,你可以将鼠标移到 相应的图标处停顿,然后查看功能的浮动提示信息。

    为了后续功能的学习,你可以点击左上角的+创建一个新的solidity合约文件,在弹出的对话框中,将 文件命名为hello.sol:

    solidity ide remix file explorer

    点击[ok]按钮后,你就可以看到在左面板的文件管理其中browser目录下出现了hello.sol文件名, 同时在中间区域的文件编辑器中自动打开了这个新创建的文件等待编辑,现在它还是空的,我们将在下面 编写简单的Solidity代码。

    2、Solidity IDE Remix编辑器及终端

    Solidity IDE Remix中间区域为上下布局,分别提供文件编辑功能和终端访问功能。

    2.1 Remix文件编辑器

    Solidity IDE Remix中间区域上方的文件编辑器支持同时打开多个文件,当前激活的文件,其文件名以粗体显示:

    solidity ide remix file explorer

    Remix文件编辑器顶部左右两侧的箭头,分别用来切换左右面板的显示与隐藏;左上角的+-, 分别用来放大或缩小编辑器里的文本字体大小。

    现在我们激活hello.sol文件,然后输入简单的合约代码:

    pragma solidity ^0.5.1;
    
    contract Hello{
        function echo(string memory text) public pure returns(string memory) {
            return text;
        }
    }
    

    基本上这是最简单的以太坊合约了,它只有一个echo()方法,作用就是把输入的字符串 再原样返回。

    2.2 Remix终端

    Solidity IDE Remix中间区域下方为终端,可以输入JavaScript命令与Remix IDE或区块链节点交互:

    solidity ide remix file explorer

    Remix终端内置了web3.js 1.0.0、ether.js、swarmgy以及当前载入的Solidity编译器,因此你可以 在终端内使用熟悉的web3 API与当前连接的区块链节点交互。

    Remix终端同时也内置了remix对象,可以利用它来脚本化地操作Solidity Remix IDE,例如载入指定 url的gist,或者执行当前显示的代码。将终端显示向上滚动到开始位置,就可以看到remix对象的 常用方法描述。

    Remix终端的另一个作用是显示合约执行或静态分析的运行结果。例如,当你部署一个合约后或执行 一个合约方法后,就会在终端看到它的执行信息:

    solidity ide remix file explorer

    点击信息行右侧的下拉图标,就可以查看该信息的详情;点击[debug]按钮,就会打开右侧面板中的 调试页对合约进行单步或断点调试。

    Remix终端顶部的工具栏提供了切换终端显示状态、清理终端输出等功能,显示待定交易的量, 选择监听交易的范围,也可以搜索历史交易。

    3、Solidity IDE Remix功能面板

    Solidity IDE Remix的右侧为功能面板,以选项页的方式提供编译、运行、静态分析、测试、 调试、设置和技术支持功能。

    3.1 编译选项页

    在编译选项页,你可以点击下拉框切换当前要使用的Solidity编译器版本:

    solidity ide remix file explorer

    然后点击[开始编译]按钮,就会编译Remix文件编辑器中当前选中的代码文件,比如我们的 hello.sol文件。编译完成后,如果没有编译错误,就可以看到合约名字Hello出现在编译 选项页的合约下拉框中:

    solidity ide remix file explorer

    可以点击[swarm]按钮将编译好的合约上传到Swarm网络,或者点击[详情]按钮查看编译 结果详情,也可以点击[ABI]或[字节码]按钮,分别将合约的ABI与字节码拷贝到系统剪切板 以便在其他程序中使用。

    3.2 运行选项页

    在运行选项页,可以部署编译好的合约,也可以执行已部署合约的方法:

    solidity ide remix file explorer

    节点环境选项提供三种选择:JS虚拟机、注入Web3对象或使用web3提供器。

    • JS虚拟机是一个JS版本的以太坊虚拟机实现,它运行在你的浏览器内,因此你不需要考虑 节点配置或者担心损失以太币,最适合学习和快速原型验证。
    • 如果你的浏览器安装了Metamask插件,或者使用Mist之类的以太坊兼容浏览器,那么也 可以选择第二个环境:使用注入的Web3对象。
    • 如果你有自己的节点,那么可以选择第三个选项使用web3提供器来让Remix连接 到你的节点上,不过如果要连接的节点是接入以太坊主网的,要注意每一次交易都是 有成本的!

    如果之前有编译好的合约,在运行选项页就可以看到这个合约的名字,例如我们的Hello。 点击[部署]按钮就可以将这个合约部署到我们选定的节点环境了:

    solidity ide remix file explorer

    现在可以看到,已部署的合约区域,已经出现我们的合约了。点击这个合约实例, 可以看到我们为Hello合约定义的echo方法自动显示出来了:

    solidity ide remix file explorer

    在方法名后面的输入框里输入方法参数,例如"helloooooooooooooo",然后点击方法名, 就可以执行合约的方法了:

    solidity ide remix file explorer

    你看到,返回值的确和我们输入的参数是一样的,我们实现了预定目标!

    3.3 其他选项页

    Solidity Remix集成开发环境还有很多功能值得研究,这个工作留给你自己了。我们只对其他 的选项页做简单介绍:

    • 分析选项页提供对Solidity合约代码的静态分析选项。
    • 测试选项页提供单元测试能力,你可以生成一个测试文件,或者执行一组测试。
    • 调试器选项页可以单步跟踪合约的执行、查看合约状态或局部变量等。
    • 设置选项提供Solidity Remix IDE本身的一些参数调整能力,例如设置编辑器文本自动折行、 启用插件、设置gist访问令牌,或者切换Remix IDE的皮肤主题 —— 目前只有三个:浅色、深色和净色。

    原文:Solidity IDE Remix中文版 - 汇智网

    转载于:https://my.oschina.net/u/3794778/blog/3043728

    展开全文
  • 就 目前来说,我发现的remix-ide是对新人最有好的开发工具了. 不需要其他任何的环境,就可以直接部署调试. 如果我发现了更加友好的,我会在以后的博客里推荐. 安装 remix就是一个普通的npm包 $ npm i remix-ide -g ...

    在以太坊应用的开发中智能合约的开发是避不开的.
    就目前来说,我发现的remix-ide是对新人最有好的开发工具了.
    不需要其他任何的环境,就可以直接部署调试.
    如果我发现了更加友好的,我会在以后的博客里推荐.

    安装

    remix就是一个普通的npm包

    $ npm i remix-ide -g
    

    启动

    $ remix-ide
    

    默认会启动本地8080端口,打开浏览器 http://localhost:8080

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-NWNd3aHk-1600174653318)(https://static.alili.tech/images/localhost_8080_.png)]

    使用

    1. 首先我们要勾选自动编译
      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-FiAs0CbP-1600174653321)(https://static.alili.tech/images/Jietu20180421-180045.jpg)]

    2. 切换到 Run ,环境选择 javascript VM
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-iC7xm2QV-1600174653322)(https://static.alili.tech/images/Jietu20180421-180308.jpg)]

    部署你的程序

    点击create按钮,就可以部署你的智能合约了.
    如下图,便是部署了智能合约的样子,因为每次部署都会消耗掉相应的余额.
    所以这个用户的余额从刚才的 100以太币变成了现在的 99.999999999...

    调试你的程序

    部署完成之后,我们发现下面出现了一个有函数名称的按钮与输入框.
    输入框内可填写该函数的参数.点击一下函数名,便可执行该函数了.
    执行结果,会在中间下面的控制台显示.
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-P5ZUhiJW-1600174653326)(https://static.alili.tech/images/Jietu20180421-182023.jpg)]

    点击一下控制台信息的detail按钮,便可看到函数详细的输出信息

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-e3VvTyK6-1600174653327)(https://static.alili.tech/images/Jietu20180421-182131.jpg)]


    公众号“ Alili丶前端大爆炸”,关注后提供海量学习资料

    图 1

    展开全文
  • Remix是以太坊官方开源的Solidity在线集成开发环境,可以使用Solidity语言在网页内完成以太坊智能合约的在线开发、在线编译、在线测试、在线部署、在线调试与在线交互,非常适合Solidity智能合约的学习与原型快速...
  • 1. 文章摘要 【本文目标】 本文翻译和实践Solidity语言编辑器REMIX官网... 使用REMIX编辑器进行Solidity语言编程,编译,运行,调试。 2). REMIX界面介绍 【实操课程列表】 第一课 如何在WINDOWS环境下搭建以太...
  • 在Remix-IDE中部署本地插件 ...为了部署插件,可以进入在线remix编辑器(可能需要科学上网)。也可以搭建本地的remix环境,具体方法百度相关教程。 二、插件开发        
  • 打开在线remix编译器 1.浏览器输入 https://remix.ethereum.org/ 2.左侧可以看到我们所有的文件 3.点击加号输入我们的文件名即可开始 学习笔记 一.安装必需插件 1.点击插件管理,页面中为这个图标 2.搜索关键字...
  • 目前以太坊智能合约的编辑器主要有在线的 http://remix.ethereum.org;由 remix-ide自己搭建的;以及 Mac,Linux 系统上的 Remix-app 三种。三者的使用方式一致。 在线编辑器参考教程:...
  • 相信做过solidity智能合约开发的小伙伴们应该都用过在线Remix编辑器。不可否认它是目前来看最方便快捷且功能强大的在线编辑器。 但是Remix也不是完美的,在使用中我们也遇到了很多问题: 1.本地文件的import不灵活...
  • Solidity在线编辑器中文版

    千次阅读 2019-04-29 01:22:12
    Remix是以太坊官方开源的Solidity在线集成开发环境,可以使用Solidity语言在网页内完成以太坊智能合约的在线开发、在线编译、在线测试、在线部署、在线调试与在线交互,非常适合Solidity智能合约的学习与原型快速...
  • 1.Remix简介 Remix 是一个开源的 Solidity 智能合约开发环境,提供基本的编译、部署至本地或测试网络、执行合约等功能。Solidity 是 以太坊Ethereum 官方设计和支持的开发语言,专门用于编写智能合约。 网址:...
  • remix使用注意事项 使用remix旧网页版时,要想使得刚刚部署的智能合约能够在调用withdraw函数的同时,还能传递不为零的value值,则fallback函数和withdraw函数都要添加payable关键字。
  • 五、Remix简单使用 &amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;amp;nbsp;&amp;amp;amp;amp;...目前以太坊智能合约的编辑器主要有在线的 http://remix.
  • 基于Remix以太坊开发例程及个人感悟

    千次阅读 多人点赞 2020-07-09 11:04:13
    ## 基于Remix以太坊开发例程及个人感悟 创作来源:本文面向刚刚接触以太坊区块链编程,希望能够在自我学习过程中巩固知识,如果有什么问题欢迎各位提出建议。一、通过实际操作中对以太坊智能合约编程有个初步认识...
  • 使用Remix编译和部署以太坊智能合约

    千次阅读 2018-04-20 09:20:40
    Remix 是一个开源的 Solidity 智能合约开发环境,提供基本的编译、部署至本地或测试网络、执行合约等功能。Solidity 是 以太坊Ethereum 官方设计和支持的开发语言,专门用于编写智能合约。本文希望将一个很简单的...
  • 1. Remix IDE介绍 Remix IDE是一款以太坊官方solisity语言的在线IDE,适合新手,可以在浏览器中快速编写、部署、测试智能合约。 在线地址:remix-ide online 某些时候可能是在离线环境下工作或者受限于网速原因,...
  • remix使用_使用Remix展平合同和调试

    千次阅读 2020-08-29 17:07:48
    remix 使用Smart contracts on the Ethereum main-net use real money, so building error-free smart contracts is crucial and requires special tools like debuggers. 以太坊主网上的智能合约使用真实资金,...
  • 目前开发智能的IDE, 首推还是Remix, 而Remix官网, 总是由于各种各样的(网络)原因无法使用,本文就来介绍一下如何在本地搭建智能合约开发环境remix-ide并介绍Remix的使用。 写在前面 Remix 是以太坊智能合约编程...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 737
精华内容 294
关键字:

remix编辑器