setState vs refs em react.js

Criei abas em React e agora clique em Tenho que alterar a classe das abas, as classes de abas podem ser as seguintes:

1: ativo
2: previousActive
3: jáSelecionado

Ao clicar em uma classe de guia, torne-seactive e verifique se está selecionado antes ou nãoalreadySelected classe eactive classe da última guia ativa é removida e, se não foralreadySelected então adicionealreadySelected.

Código de uma guia em react:

var TabBody = React.createClass({
    getInitialState: function() {
        return {
            class: 'tabBody tab activeTab'
        }
    },
    render: function() {
        a.tabBody = this;
        return (React.createElement('div', {
            className: this.state.class,
            ref: 'body',
            onClick: handleTabClick
        },
        React.createElement('span', {}, "Body"))
        );
      }
});

Para alterar a classe das guias, estou fazendo de duas maneiras e quero saber qual é eficaz. Código estilo um:

 var bodyClass = (a.tabBody.state.class).split(' ');
 var sleeveClass = (a.tabSleeve.state.class).split(' ');
 var neckClass = (a.tabNeck.state.class).split(' ');
 if (data === 'tabBody') {
     bodyClass.push('activeTab');
     var str1 = program.arrayToString(bodyClass);
     Interfaces.tabBody.setState({
         class: str1
     });
 }

Estilo do código 2

a.tabBody.refs.body.classList.remove('activeTab');
a.tabBody.refs.body.classList.add('tabPreviewComplete');
a.tabSleeve.refs.body.classList.add('activeTab');

Que estilo é bom para fazer isso e por quê?