js4eos支持EOS智能合约编译和部署了,再也不用编译EOS了

时间:2024-04-01 16:52:30

  EOS最近DAPP不断增多,活跃度也不错,但是EOS一直有一个心病,那就是操作门槛高,这也是EOS参与者账号少的核心原因。EOS门槛高主要体现在三个方面。

    1)新账号创建机制异常复杂

    必须有一个已经存在的账号才能创建新账号,且消耗EOS。这个类似邀请码机制,进入EOS,必须要有“推荐人”,且自己得掏钱。这个问题是机制上的,比较难解决。但还是有一些尝试的,比如BM曾倡议降低账号数据RAM消耗量,比如最近meetone和WhaleEx联合弄免费账号活动,尽管需要实名绑定且三天活跃才会免费,但是对于那些对隐私不是很在意的新用户还是利好的,是一个双赢,对EOS生态也是利好。

   2)RAM, CPU机制太繁琐

    CPU价格经常波动,CPU大涨就可能导致用户账号因为CPU不足而处于“冻结”状态,就算用户账号有再多的EOS,也解冻不了,必须等其他人施救,体验极差。这个我在4个月前就做了一个CPU互助平台eosfavor.com做CPU免费抵押,后来由于CPU太贵,没法持续下去,目前只支持部分用户免费**。

    3)EOS使用开发环境不友好

    目前个人及开发人员都是通过cleos这个客户端程序和EOS交互,这里就存在一个问题,要得到cleos就必须编译EOS。而EOS编译一向都不是一个简单的事情,一是不同机器系统可能会出现各种问题,二是机器要求较高。同时,EOS各种升级还可能导致编译错误,比如EOS1.2出现过“symbole_core.hpp”找不到的问题。

    js4eos的初衷就是降低用户EOS使用门槛。js4eos第一版解决了EOS个人使用者的问题,即提供了和cleos一模一样的命令,只需一条安装js4eos命令即可拥有cleos的所有功能,无需编译EOS。但是智能合约开发人员需要使用eosiocpp等工具,还是需要编译EOS,因此这次js4eos升级了,支持编译部署智能合约,开发人员也不需要编译EOS了。

    

  • js4eos升级功能            

        1)支持EOS智能合约编译部署

        2)用户账号私钥加密保护,用户的私钥加密后才保存到文件里的,不暴露明文。使用前必须通过unlock解锁。

        3)支持一键切换网络,在主网,测试网络jungle, 麒麟网络,fibos等网络中*切换。

js4eos config set  -n mainnet/jungle/kylin/fibos

        4)支持水龙头功能,比如新建测试网络账号,通过下面命令即可一键创建

js4eos支持EOS智能合约编译和部署了,再也不用编译EOS了

        

  • js4eos进行智能合约开发实践

 js4eos安装

     js4eos安装只需要几秒钟

npm install -g js4eos

//创建默认钱包,需要记住它输出的钱包密码,后面unlock时需要输入

js4eos wallet create

导入私钥

    这里导入的私钥,js4eos会加密保存到文件里

//解锁钱包,需要输入前面的钱包密码

js4eos wallet unlock

js4eos wallet import your_private_key

  

  • 智能合约编写,编译及部署      

mkdir hello 

cd hello

在hello目录下新建hello.cpp文件,通过vim等编辑器输入如下合约代码

js4eos支持EOS智能合约编译和部署了,再也不用编译EOS了

然后编译

js4eos compile -o hello.wasm hello.cpp

js4eos compile -g hello.abi hello.cpp

切换到测试网络部署

cd ../

js4eos config set -n jungle

js4eos  set contract youraccount hello    

测试

js4eos push action youraccount hi '["youraccount"]' -p youraccount

切回主网部署正式上线

js4eos config set -n mainnet

js4eos  set contract youraccount hello

中间执行过程中如果有以下提示,说明你没有导入私钥或者unlock

Error: missing key, check your keyProvider

 

  • hello源码实践

https://github.com/itleaks/eos-contract/tree/master/hello-exp

  • js4eos源码及详细文档

https://github.com/itleaks/js4eos

喜欢就点击关注吧


公众号:区块链斜杠青年

js4eos支持EOS智能合约编译和部署了,再也不用编译EOS了

欢迎大家加我微信:itleaks

js4eos支持EOS智能合约编译和部署了,再也不用编译EOS了