Я надеюсь использовать контракты openzeppelin-solidity. Один из них использует Ownable. Можно ли сделать следующее (через компиляцию и миграцию трюфеля)? Спасибо.
var OmniCAT = artifacts.require("./OmniCAT.sol");
var Ownable = artifacts.require("./Ownable.sol");
module.exports = function(deployer) {
deployer.deploy(Ownable);
deployer.deploy(OmniCAT);
};
Это правильно с js
точки зрения синтаксиса. Но поскольку он OmniCat
использует Ownable
контракт, вам следует дождаться его развертывания, а затем выполнить развертывание OmniCat
.
Это связано с тем, что развертывание требует времени, поэтому оно выполняется асинхронно. truffle использует обещания при развертывании.
в конце концов, я думаю, что это будет работать лучше:
var OmniCAT = artifacts.require("./OmniCAT.sol");
var Ownable = artifacts.require("./Ownable.sol");
module.exports = function(deployer) {
deployer.deploy(Ownable).then(
Ownabledeployed =>{
deployer.deploy(OmniCAT);
});
};
Хенк
Исмаэль