:El contrato no se implementó en la red detectada (discrepancia de red/artefacto) probó todos los enlaces pero no ayudó

mi código APP.js

App = {
  web3Provider: null,
  contracts: {},
  account: 0x0,

  init: function() {
    return App.initWeb3();
  },

  initWeb3: function() {
    web3.eth.defaultAccount=web3.eth.accounts[0]
    // Initialize web3 and set the provider to the testRPC.
    if (typeof web3 !== 'undefined') {
      App.web3Provider = web3.currentProvider;
      web3 = new Web3(web3.currentProvider);
    } else {
      // set the provider you want from Web3.providers
      App.web3Provider = new Web3.providers.HttpProvider('http://localhost:8545');
      web3 = new Web3(App.web3Provider);
    }
    App.displayAccountInfo();
    return App.initContract();
  },

  displayAccountInfo: function() {
    web3.eth.getCoinbase(function(err, account) {
      if (err === null) {
        App.account = account;
        $("#account").text(account);
        web3.eth.getBalance(account, function(err, balance) {
          if (err === null) {
            $("#accountBalance").text(web3.fromWei(balance, "ether") + " ETH");
          }
        });
      }
    });
  },

  initContract: function() {
    $.getJSON('ChainList.json', function(chainListArtifact) {
      // Get the necessary contract artifact file and use it to instantiate a truffle contract abstraction.
      App.contracts.ChainList = TruffleContract(chainListArtifact);

      // Set the provider for our contract.
      App.contracts.ChainList.setProvider(App.web3Provider);

      // Retrieve the article from the smart contract
      return App.reloadArticles();
    });
  },

  reloadArticles: function() {
    // refresh account information because the balance may have changed
    App.displayAccountInfo();

    App.contracts.ChainList.deployed().then(function(instance) {
      return instance.getArticle.call();
    }).then(function(article) {
      if (article[0] == 0x0) {
        // no article
        return;
      }

      // Retrieve and clear the article placeholder
      var articlesRow = $('#articlesRow');
      articlesRow.empty();

      // Retrieve and fill the article template
      var articleTemplate = $('#articleTemplate');
      articleTemplate.find('.panel-title').text(article[1]);
      articleTemplate.find('.article-description').text(article[2]);
      articleTemplate.find('.article-price').text(web3.fromWei(article[3], "ether"));

      var seller = article[0];
      if (seller == App.account) {
        seller = "You";
      }

      articleTemplate.find('.article-seller').text(seller);

      // add this new article
      articlesRow.append(articleTemplate.html());
    }).catch(function(err) {
      console.log(err.message);
    });
  },

  sellArticle: function() {
    // retrieve details of the article
    var _article_name = $("#article_name").val();
    var _description = $("#article_description").val();
    var _price = web3.toWei(parseInt($("#article_price").val() || 0), "ether");

    if ((_article_name.trim() == '') || (_price == 0)) {
      // nothing to sell
      return false;
    }

    App.contracts.ChainList.deployed().then(function(instance) {
      return instance.sellArticle(_article_name, _description, _price, {
        from: App.account,
        gas: 500000
      });
    }).then(function(result) {
      App.reloadArticles();
    }).catch(function(err) {
      console.error(err);
    });
  },
};

$(function() {
  $(window).load(function() {
    App.init();
  });
});

Mi código Truffle.js

module.exports = {
  networks: {
    development: {
      host: "localhost",
      port: 8545,
      network_id: "*" // Match any network id
    }
  }
};

Intenté seguir esto sin uso

1) eliminamos la carpeta de compilación por completo y

y vuelva a ejecutar el

trufa migrar --reset

(no tuvo éxito)

2) He usado los dos comandos para verificar que no se vuelva a compilar y desplegar ningún uso

trufa compilar trufa migrar

(es inútil)

3) ¿Alguien puede explicar qué dice este error? que son artefactos en etherium nada me ayudo por favor ayudenme

Hola Venkatesh! Para obtener una respuesta potencialmente más completa, comparta su código de implementación de migrationsla carpeta.

Respuestas (1)

El puerto de desarrollo predeterminado de Truffle es 9545, como en

✗ truffle develop
Truffle Develop started at http://127.0.0.1:9545/

Accounts:
(0) 0x627306090abab3a6e1400e9345bc60c78a8bef57
...

Para implementar localmente en el entorno de desarrollo de Truffle, intente esto:

  • pon 9545 como tu puerto para developmentla red
  • ejecutar truffle developen una terminal
  • correr truffle migrate --reset --network developmenten otro
Hola, estoy usando testrpc para la primera prueba, se menciona que está listado en el puerto 8545 después de ejecutar el comando testrpc. Ahora, si cambio el puerto en la trufa, puede causar algún problema, creo. Por favor, ayuda.
No hay problema, llegaremos al fondo. Pero primero pruebe el método descrito anteriormente.
Lo intenté pero dice error de rpc ahora. Si no le importa, le daré el enlace de github. ¿Puede descargarlo e implementarlo una vez usando testrpc? github.com/chainskills/chainlist/releases/tag/…
Intente describir su prueba y error aquí para que otros entiendan lo que está sucediendo de su lado y encuentren una solución colectivamente; un poco más que "error de rpc" podría ser útil. No es como si pudieras decir "oh, no funciona, vayan a revisar mi código chicos" y relajarse. Bueno, puedes, pero no es la forma de StackExchange. Se espera que su aporte sea definitivamente no menor que el de otros participantes, si desea que se resuelva el problema. Solo intenté implementar su código en la red de desarrollo de trufas; está bien, solo cambie el puerto a 9545.
Gracias Funcionó mientras usaba metamask y solo trufa
¡Excelente! Puede implementar de manera similar a una red de prueba como Rinkeby. ¿Esto satisface sus necesidades de desarrollo y resuelve el problema?