我正在撰寫一個網路加密貨幣網路服務,并嘗試使用 Etherium js 庫對智能合約引數進行編碼。我創建了一個 js 檔案并嘗試匯入已安裝的 ethers 庫。當我嘗試呼叫創建的 js 函式時出現錯誤Uncaught SyntaxError: Cannot use import statement outside a module (at encoder.js:4:1)這是代碼
import { ethers } from "ethers";
const AbiCoder = ethers.utils.AbiCoder;
const ADDRESS_PREFIX_REGEX = /^(41)/;
const ADDRESS_PREFIX = "41";
async function encodeParams(inputs) {
let typesValues = inputs;
let parameters = "";
if (typesValues.length == 0) return parameters;
const abiCoder = new AbiCoder();
let types = [];
const values = [];
for (let i = 0; i < typesValues.length; i ) {
let { type, value } = typesValues[i];
if (type == "address")
value = value.replace(ADDRESS_PREFIX_REGEX, "0x");
else if (type == "address[]")
value = value.map((v) =>
toHex(v).replace(ADDRESS_PREFIX_REGEX, "0x")
);
types.push(type);
values.push(value);
}
console.log(types, values);
try {
parameters = abiCoder.encode(types, values).replace(/^(0x)/, "");
} catch (ex) {
console.log(ex);
}
return parameters;
}
async function main() {
let inputs = [
{
type: "address",
value: "412ed5dd8a98aea00ae32517742ea5289761b2710e",
},
{ type: "uint256", value: 50000000000 },
];
let parameters = await encodeParams(inputs);
console.log(parameters);
main();
}
請問有人可以幫我理解這個問題嗎?我正在使用 Laravel 框架。如果需要任何其他資訊,我將很樂意提供。
uj5u.com熱心網友回復:
問題出在你身上。祝你今天過得愉快。
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/458864.html
