Appel de la fonction Macro dans le modèle Velocity
Je suis à essayer de comprendre comment retourner une valeur à partir d'une vitesse appel de macro et de l'attribuer à une grandeur
ma macro fonction ressemble à quelque chose comme cela. son une fois en commun des macros fichiers
#macro(getBookListLink, $readingTrackerResult)
$readingTrackerResult.getBookListLink()
#end
Je suis besoin d'affecter le résultat de cette macro à une variable dans une autre vitesse de fichier de modèle
J'ai essayé quelque chose comme ça
#set($book_list_link = #getBookListLink( $readingTrackerResult ))
mais ne fonctionne pas. J'ai essayé avec #,$ et avec rien en face de la fonction getBookListLink. mais rien n'a fonctionné. Je ne peux pas retourner à partir d'une macro? quelque chose de mal avec ma macro?
Mais, en tant Que tel, si je call #getBookListLink( $readingTrackerResult ) séparément dans le fichier html. il fonctionne et je peux imprimer le résultat de l'INTERFACE utilisateur. Mais pas en mesure d'affecter à une variable.
source d'informationauteur
Vous devez vous connecter pour publier un commentaire.
Les Macros ne sont pas des fonctions; ils sont pour le rendu de la sortie. Toutefois, si vous ne me dérange pas de perdre le type et obtenir le résultat en tant que texte...
Pour se débarrasser d'espaces et les lignes vides d'utiliser les commentaires multi-lignes (
#* comment *#
):Au lieu de vivre avec la chaîne de limitations pour le retour des valeurs", de préférence à l'extérieur défini variable résultat peut être transmise "par référence", par exemple:
Ou tout simplement de tout écrire sur la même ligne: