Move.

Publicación

Comparte tu conocimiento.

mssoni.
Feb 17, 2025
P&R expertos

How to call a function from another Move contract?

I've deployed a contract with an address 0x3df... and a public function 'coll'. Now, I'm trying to write another contract that calls this 'coll' function, but I'm getting an error saying 'use 0x3df...::coll; use is invalid. Unbound module'. I've seen suggestions about using a dependencies file but I'm not sure how to implement this properly. What steps should I take to resolve the error and successfully call the function?

  • Move CLI
  • Move
1
2
Cuota
Comentarios
.

Respuestas

2
Raju.
Feb 17 2025, 15:37

Para llamar a una función desde otro contrato de Move, necesitas el código fuente del primer paquete. Si está disponible localmente o en GitHub, debes añadirla al archivo Move.toml como dependencia local. Cuando publicaste tu primer paquete, se creó un archivo Move.lock que contiene la dirección publicada del paquete. Esta dirección se usará en el otro proyecto que dependa de este paquete publicado. Este es un recurso para configurar dependencias: Move Book on Manifest.

1
Comentarios
.
Michelle .
Feb 17 2025, 15:37

Asegúrese de haber configurado las dependencias locales correctamente. En lugar de usar directamente «use 0x3df»... ::coll; ', debe asegurarse de que el primer paquete esté integrado correctamente. El error que ves generalmente sugiere que el módulo no se reconoce porque no está vinculado correctamente en tus dependencias.

0
Comentarios
.

Sabes la respuesta?

Inicie sesión y compártalo.

Usamos cookies para asegurarnos de que obtenga la mejor experiencia en nuestro sitio web.
Más información