Области применения в рефлюксе и неизменном js ES6 webpack chrome
У меня возникла проблема с областью видимости в ES6 с Webpack и Chrome
Вот мой код:
'use strict'
import Reflux from 'reflux'
import Immutable from 'immutable'
import Something from 'something'
import Cursor from 'immutable/contrib/cursor'
// everything is working in this scope
export default Reflux.createStore({
init: function() {
console.log(Something) // Something Not defined
console.log(Cursor) //Cursor Not defined
console.log(Reflux) // Reflux Not defined
},
... some other code
})
поэтому вопрос в том, почему вещи определены в области видимости выше, а не в области действия в функции init? Спасибо за помощь
Код, скомпилированный после babel, похож на "используйте строгий";
var _interopRequire = function (obj) { return obj && obj.__esModule ? obj["default"] : obj; };
var Reflux = _interopRequire(require("reflux"));
var Immutable = _interopRequire(require("immutable"));
var Something = _interopRequire(require("something"));
var Cursor = _interopRequire(require("immutable/contrib/cursor"));
// everything is working in this scope
module.exports = Reflux.createStore({
init: function init() {
console.log(Something); // Something Not defined
console.log(Cursor); //Cursor Not defined
console.log(Reflux);
} });