Publication
Partagez vos connaissances.
Comment récupérer des valeurs depuis ObjectTable à l'aide de champs dynamiques ?
dynamicFieldObject
J'essaie de récupérer des valeurs à partir d'un ObjectTable à l'aide de champs dynamiques depuis le frontend, mais je rencontre une erreur avec. L'erreur indiqueUnexpected arg String("gms") for the expected type Struct(MoveStructLayout...)
. Comment puis-je obtenir le type correct pour la valeur et éviter cette erreur ?
- Move CLI
- Move
Réponses
3Apparemment, l'affiche originale a réussi à résoudre leur problème en utilisant l'exemple fourni. Si vous suivez attentivement l'exemple et que vous vous assurez que les ID et les types correspondent correctement à vos données, il devrait fonctionner parfaitement.
Vous pouvez récupérer les valeurs à partir d'un ObjectTable à l'aide de l'exemple de code suivant :
const getTable = async () => {
const res = await client.getDynamicFields({
parentId: "YOUR_PARENT_ID_HERE",
});
res.data.forEach(async (df) => {
console.log(df.name, df.objectId);
const res = await client.getDynamicFieldObject({
parentId: "YOUR_PARENT_ID_HERE",
name: df.name,
});
let field = res.data?.content?.fields;
console.log("DF read", field.name);
});
};
Le remplacement YOUR_PARENT_ID_HERE
par votre carte d'identité parentale actuelle devrait vous aider à atteindre votre objectif.
Si vous rencontrez une erreur avecdynamicFieldObject
, assurez-vous que le type et la valeur correspondent à ce qui est attendu. Vous devrez peut-être vérifier que la structure que vous transmettez name
correspond à la mise en page attendue. En outre, l'utilisation getObject
doit récupérer les détails de l'objet parent, qui peuvent inclure l'identifiant nécessaire, mais assurez-vous qu'il existe et qu'il est correctement référencé.
Connaissez-vous la réponse ?
Veuillez vous connecter et la partager.
Move is an executable bytecode language used to implement custom transactions and smart contracts.
Gagne ta part de 1000 Sui
Gagne des points de réputation et obtiens des récompenses pour avoir aidé la communauté Sui à se développer.
