2016-12-06 2 views
0

Я использую сетку vaadin. Я получаю:ТипError: grid.columns [0] не определен в Firefox. Vaadin Grid

TypeError: grid.columns[0] is undefined

В Firefox как в заголовке. В Chrome он работает. Код:

var grid = grid || document.querySelector('vaadin-grid'); 
HTMLImports.whenReady(function() { 
    var json = '[["Blabla", true, "sdfsdfsd", "fsdsdfsdfsd fsdfds fsdf shfskd hds", 0, "39acbfa4-6d6b-4af9-b872-03fc70328183"]]'; 

    var testJSON = JSON.parse(json); 
    grid.items = testJSON; 

    // --> ERROR: undefined in firefox 
    grid.columns[0].renderer = function(cell) { 
     //... 
    };  
}); 

Почему?

+0

использования console.log и попробуйте получить значение сетки только b прежде чем вы получаете ошибку – Mahi

+0

Я сделал console.log сразу после grid.items = testJSON; Он показывает сетку ваадина ...: ... –

+0

@TieroL. Переменная 'json' не содержит допустимую строку JSON. Как это происходит даже после 'JSON.parse()'? – tony19

ответ

0

После обнаружения этого: Polymer 1.0 on firefox ReferenceError: Polymer is not defined

Я мог бы решить мою проблему:

Использование window.addEventListener('WebComponentsReady', function(e){ вместо

HTMLImports.whenReady(function() {

Как это:

var grid = grid || document.querySelector('vaadin-grid'); 
window.addEventListener('WebComponentsReady', function(e) { 
    var json = '[["Blabla", true, "sdfsdfsd", "fsdsdfsdfsd fsdfds fsdf shfskd hds", 0, "39acbfa4-6d6b-4af9-b872-03fc70328183"]]'; 

    var testJSON = JSON.parse(json); 
    grid.items = testJSON; 

    grid.columns[0].renderer = function(cell) { 
    //... 
    };  
}); 
Смежные вопросы