Error al implementar un nuevo contrato en Javascript usando Meteor y TemplateVar

Estoy tratando de crear un nuevo contrato al hacer clic en el botón usando Meteor y TemplateVar. El código relevante es:

Template.Borrower.events({
  'click button'(event, instance) {
    // Create new Borrower
    var _borrower = "ABC"

    alert("I am working on it...")

    web3.eth.accounts.wallet.add("0x...");

    var newBorrower = web3.eth.contract(borrowerABIArray).new(_borrower,{from:eth.accounts[0],data:borrowerData,gas:500000}, function(err, newContract){
    if(!err) {

      if(!newContract.address) {
        alert("Contract transaction sent: TransactionHash: " + newContract.transactionHash + " waiting to be mined...");

      } else {
        alert("Contract mined! Address: " + newContract.address);
      }

    }
});

Ni siquiera recibo un error, solo muestra el primer mensaje "Estoy trabajando en eso..." y luego nada. Inicié sesión en Metamask, por lo que mi billetera está desbloqueada, pero también intenté desbloquearla y tampoco funcionó.

Cuando implemento el contrato directamente con Remix, se necesitan menos de 300 000 de gasolina, por lo que no puede ser un problema de gasolina.

Gracias por tu ayuda.

Respuestas (1)

Así que lo descubrí. Primero necesitaba definir newBorrower como una nueva instancia del contrato:

newBorrower = new web3.eth.contract(borrowerABIArray)

Luego, el código funciona y extrae un nuevo prestatario.