2016-02-16 7 views
0

В нашей базе кода мы используем свойства data-automation-id как для единичных, так и для сквозных испытаний на реагирующих компонентах, к которым мы хотим иметь легкий доступ в этих тестах. Например:реакция - Удалить только защитные протекторы

<button data-automation-id="sign-up-button" /> 

В то время как это полезно во время тестирования и разработчика, я хотел бы лишить это свойство от какого-либо компоненты реакции в рабочем режиме.

Мы используем babel6 для перевода кода JSX и es2015, и поскольку именно здесь JSX преобразуется в ряд реакций, я чувствую, что это должен быть плагин babel.

Есть ли у кого-нибудь опыт в этом? Есть ли такой инструмент уже существует?

ответ

1

Вы можете создать Бабель плагин, который может удалить эти атрибуты:

export default function ({types: t}) { 
    return { 
    visitor: { 
     JSXAttribute(path) { 
     if (path.node.name.name === "data-automation-id") { 
      path.remove(); 
     } 
     } 
    } 
    }; 
} 

http://astexplorer.net/#/o1vWnRkzqF

Смежные вопросы