Uncaught TypeError: Cannot read property 'setVisible' undefined

Im assez nouveau pour SAPUI5 et quand je clique sur le bouton je reçois le message d'erreur dans le titre
ce que j'ai fait Est que j'ai utilisé le SAP web IDE pour créer un nouveau projet MVC .

dans la vue principale JS j'ai mis

createContent : function(oController) {
    var btn = new sap.m.Button({
            id:"myBtn",
            text : "Content Button"
       });
    return new sap.m.Page({
        title: "TitleT",
        content: [ btn ]
    });
}

dans le contrôleur Principal du JS j'ai mis le code suivant

onInit: function() {
    var that = this;
    window.setTimeout(function() {
        that.byId("myBtn").setVisible(true);
    }, Math.random() * 10000);
},

onPress: function() {
    this.byId("pressMeButton").setText("I got pressed");
}

Quand je le lance je vois le bouton, mais quand je clique dessus, j'obtiens l'erreur dans l'Init,
ce que je fais mal ici?

  • Depuis votre contrôleur est this, et that est attribué this, vous devriez également consulter le contrôleur de la vue avant de pouvoir accéder à l'un quelconque de ses contrôles; c'est à dire that.getView().byId("myBtn").setVisible(true);
  • J'ai aussi essayé, mais sa fonctionne pas...une autre idée?
  • Avez-vous tenté avec jQuery.proxy?
  • pouvez-vous donner des exemples?
  • Mon mauvais, ayant travaillé avec XMLViews beaucoup, le code que j'ai fourni fonctionne pour XMLViews. Pour le Javascript vue, utilisez le code suivant: sap.ui.getCore().byId("myBtn")
InformationsquelleAutor shopia T | 2014-10-30