入门 - 9. 控制台
优质
小牛编辑
124浏览
2023-12-01
原文:http://truffleframework.com/docs/getting_started/console
背景
有时在进行测试和debug时,或手动执行交易时与合约进行直接交互是需要的。Truffle提供了一种更加简单的方式,通过交互式控制台来与你的那些准备好的合约进行交互。
命令
启动控制台,使用:
truffle console
这会使用默认网络来调起一个控制台,会自动连接到一个运行中的以太坊客户端。你可以使用选项--network
来修改这个特性,更多细节参见2. 网络与APP部署和4. Truffle命令指南。
当你加载了控制台,你会看到下面的输出:
$ truffle console
truffle(default)>
default
的意思是说,你当前连接到的是默认网络。
特性
控制台支持Truffle命令行支持的命令,比如,你可以在控制台中执行migrate --reset
,其效果与在命令行中执行truffle migrate --reset
的效果一致。Truffle的控制台额外增加如下特性:
- 所有已经编译的合约都可用。就像在开发测试,前端代码中,或者移植代码中那样使用。
- 在每个命令后,你的合约会被重新加载。如使用
migrate --reset
命令后,你可以立即使用新分配的地址和二进制。 web3
库也可以使用,且也连到你了的以太坊客户端。- 所有命令返回的promise,会自动解析,直接打印出结果,你可以不用输入
then()
,简化了命令。如下:
truffle(default)> MyContract.deployed().getValue.call(); //
5
如果任何问题,欢迎留言批评指正。