Я использую stylelint в проекте CSS-IN-JS (здесь используется astroturf, но я сталкиваюсь с тем же шаблоном, использующим любую библиотеку CSS-IN-JS, например, styleled-components).
Iопределять различные стилизованные элементы в одном и том же файле, и поэтому иногда они имеют дублированные селекторы и / или правила импорта.
/* style.js */
import styled from 'astroturf';
export const StyledComponentA = styled('div')`
transform: scale(0);
&.visible {
transform: scale(1);
}
`;
export const StyledComponentB = styled('div')`
opacity: 0;
/* -> stylelint error: Unexpected duplicate selector "&.visible" */
&.visible {
opacity: 1;
}
`;
Которые я составляю следующим образом:
import React from 'react';
import { StyledComponentA, StyledComponentB } from './style';
export const Component = ({ isVisible }) => (
<StyledComponentA visible={isVisible}>
<StyledComponentB visible={isVisible}>Whatever</StyledComponentB>
</StyledComponentA>
);
Есть лиспособ установить эти правила stylelint для блоков вместо целого файла?