2017-01-11 14 views
1

Я переключился на запись в синтаксисе es2015 и использовал babel в качестве транспилятора. Внезапно эта простая функция больше не работает, эс-пух выбрасывает ошибку:window.onload не определен - es2015 хочет, чтобы все было глобальным

документ не определен

окно не определен

const jsLoaderClass = document.getElementsByClassName('js-loader')[0]; 

// hide logo on pageload 
window.onload = function jsLoader() { 
    jsLoaderClass.style.display = 'none'; 
}; 

это работает только тогда, когда я установил это глобально выглядит следующим образом:

const jsLoaderClass = global.document.getElementsByClassName('js-loader')[0]; 

// hide logo on pageload 
global.window.onload = function jsLoader() { 
    jsLoaderClass.style.display = 'none'; 
}; 
+0

'Я просто переключился на es-2015' - где и как вы сделали этот переключатель? 'global' не определен в каждом браузере, который я пробовал –

+0

извините, я имел в виду, что начал использовать eslint с babel, так как я следую книге и учебникам, использующим e6, чтобы перевести код обратно на es5, все это работает, но eslint выдает ошибку. – HendrikEng

+2

ahh, есть ли «переключатель» в eslint (например, есть в jshint), чтобы указать целевую среду - это браузер? –

ответ

4

Вы должны установить «env» в вашем es lint config в «браузер».