Я пытаюсь выполнить необработанную транзакцию Sui Swap (sui -> suideng) с использованием протокола cetus.
Проблем мой кошелек.
ниже мой текущий код, который имеет больше смысла, чем мои слова. < /p>
tx.setGasBudget(1000000);
tx.moveCall({
target: `${packageId}::router::swap`,
typeArguments: [suiAddr, suidengAddr],
arguments: [
tx.pure(process.env.CETUS_CONTRACT_ADDR), //
tx.pure(
"0xb785e6eed355c1f8367c06d2b0cb9303ab167f8359a129bb003891ee54c6fce0"
),
// tx.pure(suiAddr),
// tx.pure(suidengAddr),
tx.makeMoveVec({
objects: [
tx.object(
"0x278c016658478a5694ad4a7b03f367f01589d9b123f599a9bfb356613a2cd6da"
),
tx.object(
"0x221d8536273338c8d2c54470f31de83ecd559c6b69f75f3248c4b2870aa0a480"
),
],
}),
tx.makeMoveVec({
objects: [],
}),
tx.pure.bool(true),
tx.pure.bool(!!amount),
tx.pure.u64(amount),
tx.pure.u64(amount.toString()),
tx.pure.u128("4295048016"), // use coin value always set false.
tx.object(
"0x0000000000000000000000000000000000000000000000000000000000000006"
),
],
});
< /code>
говорит, что аргумент не может быть пустым массивом. < /p>
tx.makeMoveVec({
objects: [],
})
мне нужно использовать другой модуль/функцию для обработки этого вида случая? Похоже, требуется аргумент COINB, и он терпит неудачу с ошибкой TypeMismatch. Вот TX Digest.
Я пытаюсь выполнить необработанную транзакцию Sui Swap (sui -> suideng) с использованием протокола cetus. Проблем мой кошелек. ниже мой текущий код, который имеет больше смысла, чем мои слова. < /p> [code]tx.setGasBudget(1000000); tx.moveCall({ target: `${packageId}::router::swap`, typeArguments: [suiAddr, suidengAddr], arguments: [ tx.pure(process.env.CETUS_CONTRACT_ADDR), // tx.pure( "0xb785e6eed355c1f8367c06d2b0cb9303ab167f8359a129bb003891ee54c6fce0" ), // tx.pure(suiAddr), // tx.pure(suidengAddr), tx.makeMoveVec({ objects: [ tx.object( "0x278c016658478a5694ad4a7b03f367f01589d9b123f599a9bfb356613a2cd6da" ), tx.object( "0x221d8536273338c8d2c54470f31de83ecd559c6b69f75f3248c4b2870aa0a480" ), ], }), tx.makeMoveVec({ objects: [], }), tx.pure.bool(true), tx.pure.bool(!!amount), tx.pure.u64(amount), tx.pure.u64(amount.toString()), tx.pure.u128("4295048016"), // use coin value always set false. tx.object( "0x0000000000000000000000000000000000000000000000000000000000000006" ), ], }); < /code> говорит, что аргумент не может быть пустым массивом. < /p> tx.makeMoveVec({ objects: [], }) [/code] мне нужно использовать другой модуль/функцию для обработки этого вида случая? Похоже, требуется аргумент COINB, и он терпит неудачу с ошибкой TypeMismatch. Вот TX Digest.
zsoft94pvgbbvq54k7v4qg1q7en1qmycxxtnfvnbkv < /p> [code] tx.moveCall({ target: `${publishedAt}::pool_script::swap_a2b`, arguments: [ tx.pure(process.env.CETUS_CONTRACT_ADDR), // tx.pure( "0xb785e6eed355c1f8367c06d2b0cb9303ab167f8359a129bb003891ee54c6fce0" ), tx.makeMoveVec({ objects: [ tx.object( "0x278c016658478a5694ad4a7b03f367f01589d9b123f599a9bfb356613a2cd6da" ), // tx.object( // "0x221d8536273338c8d2c54470f31de83ecd559c6b69f75f3248c4b2870aa0a480" // ), ], }), tx.pure.bool(true), tx.pure.u64(amount), // amount tx.pure.u64(10000000000000), // amount_limit tx.pure.u128(4295048016), // getDefaultSqrtPriceLimit, hardcode tx.pure("0x6"), // clock ], typeArguments: [suiAddr, suidengAddr], }); [/code] Я сам нашел правильные параметры, и я предполагаю, что теперь остается только эта проблема, надеюсь.