Ich hoffe, Openzeppelin-Solidity-Verträge verwenden zu können. Einer von ihnen verwendet Ownable. Ist Folgendes in Ordnung (über Trüffelkompilierung und -migration)? Danke schön.
var OmniCAT = artifacts.require("./OmniCAT.sol");
var Ownable = artifacts.require("./Ownable.sol");
module.exports = function(deployer) {
deployer.deploy(Ownable);
deployer.deploy(OmniCAT);
};
js
Aus syntaktischer Sicht ist es korrekt . Aber da der OmniCat
den Vertrag verwendet Ownable
, sollten Sie warten, bis er bereitgestellt wird, und dann bereitstellen OmniCat
.
Dies liegt daran, dass die Bereitstellung einige Zeit in Anspruch nimmt, sodass sie asynchron erfolgt. Truffle verwendet Versprechungen beim Deployment.
Am Ende denke ich, dass dies besser funktionieren wird:
var OmniCAT = artifacts.require("./OmniCAT.sol");
var Ownable = artifacts.require("./Ownable.sol");
module.exports = function(deployer) {
deployer.deploy(Ownable).then(
Ownabledeployed =>{
deployer.deploy(OmniCAT);
});
};
Henk
Ismael