2016-03-25 11 views
2

Dosyam controller.js,June nesnesi, sapui 5'te nasıl ciltlenir?

Şimdi bunun için kodunun altına denemek am sapui 5. kullanarak dizide json nesneyi bağlamak istiyorum.

onInit: function() { 
     var elementArray=['ID','Name','Description','ReleaseDate','DiscontinuedDate','Rating','Price']; 
     var oModel = new sap.ui.model.json.JSONModel(elementArray); 
     sap.ui.getCore().setModel(oModel,'fieldArray'); 

//  var oModel = new sap.ui.model.json.JSONModel('./smartappall/door.josn'); 
//  sap.ui.getCore().setModel(oModel,'approcords'); 
    }, 

view.js

var elementArray= bind fieldArray json model here 

cevap

2

Ben size ulaşmak için çalışıyoruz ne emin değilim, ama modeliniz sadece dizi içerdiğinden, sizin görünümünde aşağıdakileri yapabilirsiniz:

var elementArray = sap.ui.getCore().getModel("fieldArray").getData();

:

(EDITED getData() bölümünü ... unuttum)

Ama genel olarak, özel bir modele nesneleri veya diziler saklamıyoruz, daha ziyade ayrı mülklerde saklayabilirsiniz bir modeli var. Bu durumda, bunu yapabilirsiniz:

denetleyicisi:

sap.ui.getCore().getModel("fieldArray").setProperty("/pathToYourArray", elementArray");

görünümünde:

var elementArray = sap.ui.getCore().getModel("fieldArray").getProperty("/pathToYourArray");

+0

Yanıtınız için teşekkürler, Ama çalışmıyor @qualiture .... !! TypeError: –

+0

Hata, çok hızlı daktilo, ben bir hata var benim tepkisini – Qualiture

+0

düzenlenebilir. Sap.ui.getCore (...) getModel (...) tanımlanmamıştır. –

0

JSONModel veriler JavaScript nesne düz olmalıdır. IE bir javascript dizisi değil.

Bir önceki cevabı takip etmek ve JSONModel bir özelliği olarak dizinizi ayarlayabilir veya bir nesnenin içine sarmak için ilk diziyi değiştirebilir ya: {

onInit: function() { 
    var data = { elementArray: [ 
     'ID', 
     'Name', 
     'Description', 
     'ReleaseDate', 
     'DiscontinuedDate', 
     'Rating', 
     'Price' 
    ]}; 
    var oModel = new sap.ui.model.json.JSONModel(data); 
    sap.ui.getCore().setModel(oModel,'fieldArray'); 

}, 

Sonra için görünümünüzü bağlayabilir fieldArray >/elementArray}

+0

Tamamen bir modeli anahtar değerlerinin oluşmalıdır kabul ederken, yaparsın JSONModel'de de basit bir dizi dizeyi mükemmel bir şekilde kullanır; bu durumda, "{fieldArray> /}' ve "{fieldArray>}' _ kümesine bağlanırsınız (ve evet, cehennem gibi çirkin görünüyor;)) _ – Qualiture