Web3js
我可以使用 Web3.js 通過本地 TestRPC 客戶端部署和訪問智能合約嗎?
我正在將我的智能合約遷移到 TestRPC 測試客戶端的本地副本。
- 使用與 TestRPC 測試客戶端在同一台 PC 上執行的 Node.JS 應用程序,我可以使用 deploy() 函式將我的智能合約的新實例部署到本地執行的 TestRPC 客戶端嗎?還是只有使用 Rinkeby 等測試網或乙太坊主網作為部署目標才有可能?
2)同樣的問題,但通過 Web3.js 庫訪問智能合約。我可以使用該庫從執行在同一台 PC 上的 Node.js 應用程序與在本地 TestRPC 客戶端中執行的智能合約實例進行互動嗎?
如果有人有任何優秀範例的連結,這些範例展示瞭如何
view
使用 Web3.js 庫從 Node.JS 應用程序遷移/部署智能合約並訪問智能合約的功能,請分享。
我會查看使用 Truffle Framework 的文件。它允許您在 TESTRPC 或 Rinkeby 上部署您的智能合約並與之互動。
要回答你的第二個問題,這裡有一個例子:
contract("MyContractTest", () => { let FACTOR = 5; let myContract; before(async () => { myContract = await artifacts.require("MyContract.sol").new(FACTOR); }); describe(`my test:`, async () => { for (let i = 0; i < 100; i++) { it(`func(${i})`, async () => { try { let expected = i * FACTOR; let actual = await myContract.func(i); assert(actual.equals(expected), `expected ${expected} but got ${actual}`); } catch (error) { assert(false, error.message); } }); } }); });
您需要的一切都在這裡。