Comment faire pour récupérer la Vue à l'extérieur de la manette - Openui5
Si j'utilise this.getView()
à l'intérieur du contrôleur de vue, je peux le récupérer sans problèmes.
Comment puis-je récupérer la vue si je suis à l'extérieur du contrôleur (e. g. dans le contrôleur d'un autre point de vue)?
J'essaie sap.ui.core.Core().byId("<name of view>")
mais il renvoie undefined
.
OriginalL'auteur padibro | 2014-06-17
Vous devez vous connecter pour publier un commentaire.
Vous pouvez instancier un autre point de vue à l'aide de:
Si vous êtes à l'aide de différents types d'affichage vous pouvez choisir la fonction nécessaire de ici.
À éviter la pluralité de l'instanciation vous pourriez faire quelque chose comme ceci:
Voir cette pour plus de détails concernant la définition de la vue/l'instanciation et l'Id.
onInit
fonction de la vue des mises à jour). Comment puis-je actualiser l'affichage après l'édition?Pouvez-vous décrire l'endroit où vous voulez faire ce genre de modifications?
J'ai une vision "OperationDetail". Dans le contrôleur, j'ai onInit fonction et une autre fonction appelée "showTable"; il ajouter une table à la vue. Si je l'appelle le présent.showTable() à l'intérieur de onInit fonction que j'ai vue de la table de sortie, mais si je veux appeler à l'extérieur de la fonction onInit (exemple dans un autre contrôleur) par sap.l'interface utilisateur.xmlview("appIntra.détail.OperationDetail").getController().showTable() je ne vois pas toutes les tables de la production.
Je vois. Assurez-vous de toujours utiliser une seule instance de la vue dans un contrôleur à distance. L'appel de
sap.ui.xmlview("appIntra.detail.OperationDetail")
sera toujours de vous renvoyer une nouvelle instance. Ainsi affecter la valeur de retour desap.ui.xmlview()
à une variable locale où vous l'utilisez et l'appel des fonctions sur elle commeview.getController().showTable()
depuis cet appel sera sur votre affiche la vue et non pas sur un nouveau. Si vous avez attribué un ID à votre vue, vous pouvez utilisersap.ui.getCore().byId("<id>").getController().showTable()
.Comment puis-je ajouter un ID à vue? J'utilise la vue XML
OriginalL'auteur Tim Gerlach
Lorsque je crée une vue j'ai mis un id
puis-je le récupérer par id
OriginalL'auteur padibro
this
mot désigne seulement le contrôleur particulier où, commesap.ui.getCore()
se réfère au projet de vues.OriginalL'auteur user7017477