Truffle-Console
在 Truffle Console 中更改數字輸出的格式
當我在 Truffle 控制台中返回一個大數字時,我的結果格式類似於:
truffle(development)> tokenInstance.balanceOf(accounts[2]) <BN: 64>
但是,在我使用的其中一個影片教程中,影片顯示的輸出類似於:
truffle(development)> tokenInstance.balanceOf(accounts[2]) BigNumber { s: 1, e: 2, c: [ 100 ] }
松露中是否有任何配置選項,以便我的輸出看起來像後者?(而且我並不擔心將我的結果轉換為以 10 為底:我知道我可以通過回調和 toNumber() 來做到這一點。)
Truffle v5 中的格式發生了變化,因為它基於使用 bn.js 的 web3 v1。要使用以前使用的格式,您必須安裝基於 web3 v0.20 的 Truffle v4,它使用 bignumber.js。
您可以通過以下方式將數字格式更改為 BigNumber
// Choices are: `["BigNumber", "BN", "String"]. const Example = artifacts.require("Example"); Example.numberFormat = "BigNumber";
如 5.0 重大更改部分所述:
數值返回值現在是 BN 對象,而不是以前預設的 BigNumber.js。這兩個項目使用明顯不同的 API 語義,因此您可能需要查看它們。
Truffle 為無法批量切換的項目提供了一種兼容模式。將 numberFormat 設置為“BigNumber”、“String”或“BN”以供選擇。