August 2019
Intermediate to advanced
486 pages
13h 52m
English
Just like with .gas(), gas units can be forwarded to a called contract. Similarly, the ether value can be forwarded or sent to the called contract. This is done using the .value() method call. As shown in the following code, the current contract initiates the methodToCall function call on otherContract and forwards 1 ether to it. As methodToCall is going to receive 1 ether, it must be a payable function, as follows:
otherContract.call.value(1 ether)("methodToCall", "param1");
Notice that in the preceding code, to transfer the ether amount to otherContract, the current contract must have ether balance.
The .gas() option is available on both the call and delegatecall methods, while the .value() option is ...