Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

189
Views
Valor de transacción ETH siempre 0

Estoy tratando de usar uniswap v3 para agregar intercambios a mi proyecto. Cada vez que llamo a la función en mi contrato desde la interfaz, el valor es 0 ETH en metamask y solo se paga la tarifa. He intentado todas las formas en que puedo pensar en convertir la cadena de entrada en wei, gwei, hexadecimal, etc. y siempre es 0 en la página de transacciones de metamask.

 function transferApprove(uint _amountIn, address _routerAddress) internal { TransferHelper.safeTransferFrom( ETH, msg.sender, address(this), _amountIn ); TransferHelper.safeApprove(WETH9, _routerAddress, _amountIn); } function swapExactInputSingle(uint _amountIn) external returns (uint amountOut) { require(_amountIn > 0, "cannot swap 0 ETH"); emit value(_amountIn); transferApprove(_amountIn, UNISWAP_V3_ROUTER); ISwapRouter.ExactInputSingleParams memory params = ISwapRouter .ExactInputSingleParams({ tokenIn: ETH, tokenOut: WETH9, fee: 3000, recipient: msg.sender, deadline: block.timestamp, amountIn: _amountIn, amountOutMinimum: 0, sqrtPriceLimitX96: 0 }); amountOut = uniswapRouter.exactInputSingle(params); }

/////SECCIÓN JAVASCRIPT

 const sendSwap = async () => { try{ if(!window.ethereum) return alert("Please install metamask"); const parsedAmount = ethers.utils.parseUnits(amount, 18); const provider = new ethers.providers.Web3Provider(window.ethereum, "any") const signer = provider.getSigner() const swap = new ethers.Contract(SwapAddress.address, SwapAbi.abi, signer) const accounts = await ethereum.request({method:'eth_requestAccounts'}) setCurrentAccount(accounts[0]) setSwap(swap) console.log(parsedAmount) const transactionHash = await swap.swapExactInputSingle(parsedAmount) setIsLoading(true); await transactionHash.wait(); setIsLoading(false); console.log({transactionHash}); } catch (error) { console.log(error); }
about 4 years ago · Juan Pablo Isaza
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!