cómo crear una matriz de múltiples tipos de datos

Dado que la estructura no se puede enviar desde solidity a web3js, estoy usando matrices, podría obtener una matriz de tipo de datos único en el siguiente código (dirección de usuario), pero no puedo tomar valores múltiples en la matriz (nombre de usuario, objetivo de usuario). Cualquier sugerencia cómo sería genial

Solidez:

struct Person
    {
        address userAddress;
        string userName;
        uint userTarget;
    }
     mapping (uint => person) Persons;
     uint[] public personAccounts;
     uint incr = 0;

     function setDetailse(string  data, uint target) public
    {
        uint icr = incr++;
        address _address = msg.sender;
        var person = persons[icr];

        person .userAddress = _address;
        person .userName= _vote;
        person .userTarget = target;
        person Accounts.push(icr) -1;
    }

   function getPerson() view public returns(uint[])
   {
       uint256[] memory data =  new uint256[](11);
       for(uint i = 1; i<=10 ;i++)
        {
           data[i]=personAccounts[i];
        }
       return data;
   }

web3js:

GetDetails: function(Data, account) {
  event.preventDefault();
  var dataInstance;

  web3.eth.getAccounts(function(error, accounts) {
    if (error) {
      console.log(error);
    }

    var account = accounts[0];

    App.contracts.Details.deployed().then(function(instance) {
      dataInstance= instance;
      return dataInstance.getPerson();
    }).thenfunction((numbers => {
      const [ nums ] = numbers;
      for (var i = 0; i <nums.length; i++) 
    {
          console.log("address: "+nums[i]);
      }
  })).catch(function(err) {
      console.log("error executed");
    });
  });
puede hacer otra variable más para la dirección de usuario, el nombre de usuario, el destino del usuario como lo hizo para los datos como: uint256 [] datos de memoria = new uint256 [] (11); y devolver todos los valores de las variables en la matriz una vez.

Respuestas (1)

No se puede crear una matriz de múltiples tipos de datos. Una matriz debe contener elementos del mismo tipo de datos. Como uno no puede devolver una estructura desde la función de solidez, no puede usar una matriz de estructura. Consulte esta pregunta para saber cómo devolver múltiples tipos de datos desde una función de solidez.