209 похожих чатов

Подскажите, пожалуйста, web3.BatchRequest() на js позволяет делать несколько транзакций в

одной? я пробую, и получается все равно несколько отдельных транзакций. что я делаю не так? каким образом я могу это сделать?

можно ли замутить что-то типа этого? то есть отправить список значений туда, где пересекаются
const txObject = {
value: 10000000000,
nonce: web3.utils.toHex(txCount),
gasLimit: gas_limit,
gasPrice: gas_price,
to: [contract1, contract2],
data: [data_function_contract1, data_function_contract2]
}

и потом

const tx = new Tx(txObject)
tx3.sign(PRIVATE_KEY)

const serializedTx = tx.serialize()
const raw = '0x' + serializedTx.toString('hex')
web3.eth.sendSignedTransaction.request([raw], (err,txHash) =>{
console.log('err:', err, 'txHash:', txHash)

6 ответов

8 просмотров

Batch не позволяет сделать несколько транзакции в одной, он просто вызывает окна для подтверждения транзакции. Челать несколько транзакции в одной можно только на стороне смарт контракта

Попробуй https://github.com/makerdao/multicall.js

Iván- Автор вопроса
Руслан Миров
Batch не позволяет сделать несколько транзакции в ...

Спасибо. То есть это можно сделать, допустим, написав Смарт контракт на солидити что-то типа contract mycontract{ function multitrans (arg1, arg2...) { ContractA.transfer_in(arg1...) ContractB.transfer_out(arg2...) } } задеплоить его и уже через web3js вызывать одной транзакцией функцию multitrans? Если нет, то как тогда, а если да, то это рациональный вариант или можно лучше?

Iván- Автор вопроса
tinsoldi3r
Попробуй https://github.com/makerdao/multicall.js

спасибо, да, видел, тоже решил, что только для колов и не подходит

Iván
Спасибо. То есть это можно сделать, допустим, напи...

Да, запихнуть логику в функцию контракта и потом через web3 вызывать эту функцию. Помните ещё про block gas limit, если будет много логики в одной функции, то это может не сработать. Что конкретно Вы хотите сделать ?

Iván- Автор вопроса
Руслан Миров
Да, запихнуть логику в функцию контракта и потом ч...

спасибо. эфир поменять на токен в одном контракте и этот токен поменять на эфир в другом

Похожие вопросы

Обсуждают сегодня

Карта сайта