mein APP.js- Code
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();
});
});
Mein Truffle.js-Code
module.exports = {
networks: {
development: {
host: "localhost",
port: 8545,
network_id: "*" // Match any network id
}
}
};
Ich habe folgendes versucht, kein Zweck
1) Wir haben den Build-Ordner vollständig gelöscht und
und erneut ausführen
Truffle-Migration --reset
(nicht gelungen)
2) Ich habe die beiden Befehle verwendet, um zu überprüfen, ob sie neu kompiliert und bereitgestellt werden, ohne dass sie verwendet werden
Trüffel kompilieren Trüffel migrieren
(keine Verwendung)
3) Kann jemand erklären, was dieser Fehler sagt? Was sind Artefakte im Etherium ? Nichts hat mir geholfen. Bitte helfen Sie mir
Der Standardentwicklungsport von Truffle ist 9545
, wie in
✗ truffle develop
Truffle Develop started at http://127.0.0.1:9545/
Accounts:
(0) 0x627306090abab3a6e1400e9345bc60c78a8bef57
...
Um lokal in der Entwicklungsumgebung von Truffle bereitzustellen, versuchen Sie Folgendes:
development
das Netzwerk eintruffle develop
in einem Terminaltruffle migrate --reset --network development
in einem anderen laufen9545
.
Utgarda
migrations
dem Ordner mit.