Vanilla Extract 是一个零运行时 CSS-in-TypeScript(或 JavaScript)库,它允许您使用 TypeScript 作为 CSS 预处理器。样式写在单独的 *.css.ts
(或 *.css.js
)文件中,并且其中的所有代码都在构建过程中执行,而不是在用户的浏览器中执行。如果您希望将 CSS 包大小保持在最小,Vanilla Extract 还提供了一个名为Sprinkles的官方库,该库允许您定义一组自定义实用程序类和一个类型安全的函数,用于在运行时访问它们。
要使用内置的 Vanilla Extract 支持,首先确保您已在应用程序中设置了CSS 捆绑。
然后,将 Vanilla Extract 的核心样式包作为开发依赖项安装。
npm install -D @vanilla-extract/css
然后,您可以通过 .css.ts
/.css.js
文件名约定选择加入 Vanilla Extract。例如
import { style } from "@vanilla-extract/css";
export const root = style({
border: "solid 1px",
background: "white",
color: "#454545",
});
import * as styles from "./styles.css"; // Note that `.ts` is omitted here
export const Button = React.forwardRef(
({ children, ...props }, ref) => {
return (
<button
{...props}
ref={ref}
className={styles.root}
/>
);
}
);
Button.displayName = "Button";