从jQuery到es6 - 如何编写简单的插件?

时间:2017-07-27 12:46:18

标签: javascript ecmascript-6 es6-class

我观看了Ryan Christiani的教程,但我不能在实践中使用..:/

例如如何在es6中编写此代码?我想知道最佳实践(课程,活动等)

var defaultOptions = {
    activeClass:    '.active',
    tabClass:       '.tab-item'

};

function changeParam(el) {
    $(defaultOptions.tabClass).removeClass(defaultOptions.activeClass);
    $('#' + $(el).attr('data-tab')).addClass(defaultOptions.activeClass);
}

$(el).on('click', function(){
    changeParam($(this));
});

THX。

1 个答案:

答案 0 :(得分:1)

这将作为ES6代码:

var defaultOptions = {
    activeClass  : '.active',
    tabClass     : '.tab-item'
};

function changeParam(el) {
   let element = document.querySelector(defaultOptions.tabClass);
   element.className = element.className.replace(defaultOptions.activeClass,"");
   el.className += ' ' + defaultOptions.activeClass;
}

el.addEventListener('click', function(event){
    changeParam(event.currentTarget);
});

顺便说一下,你的代码与类没有任何关系。您只是将事件处理程序附加到事件。