0

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 の後にコンパイルされたコードは、「use strict」のようなものです。

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);
    } });
4

0 に答える 0