如何避免webpack替换“this”?

时间:2017-05-19 12:44:02

标签: javascript webpack ecmascript-6 babeljs

我想写一个库,使“常规”变得容易。所以,我开始使用Webpack和babel编写它...我遇到了一个问题... Webpack用this替换所有undefined

以下是一种方法的代码:

let div = document.querySelector('.test');
div.style.color = 'black';

Node.prototype.UX = {

    toggleable(elem, prop, value) {

        let elemsState = elem.style[prop];

        this.onclick = () => {    
            if (!elem.dataset.state || elem.dataset.state == "0") {
                elem.dataset.state = "1";
                elem.style[prop] = value;
            } else {
                elem.dataset.state = "0";
                elem.style[prop] = elemsState;
            }
        }
    }
};

let button = document.querySelector('#test');

button.UX.toggleable(div, 'color', 'red');

以下是浏览器获取的内容:

Chrome DevTools

没有Webpack,它可以正常工作。但我想用Webpack编写库,因为它可以使用ES6并且很方便。

那么,我该如何解决这个问题?

0 个答案:

没有答案