React的TSX中如何同时使用CSS模块的类名和字符串类名

1.有两种类名方法

TypeScript 复制代码
import React from 'react';
import styles from './index.less';
const Home: React.FC = () => {
    return (
        <div>
            <h1 className='main'>Welcome to the Home Page</h1>
            <p  className={styles.list}>This is a simple home page.</p>
        </div>
    );
};

export default Home;

2.同时使用时会报错

3.解决方法

3.1字符串拼接(基础方式)​

TypeScript 复制代码
import React from 'react';
import styles from './index.less';
const Home: React.FC = () => {
    return (
        <div>
            <h1 className={`${styles.list} main`} >Welcome to the Home Page</h1>
            <p className={styles.list}>This is a simple home page.</p>
        </div>
    );
};

export default Home;

3.2classnames 库(推荐方案)​

bash 复制代码
npm install classnames @types/classnames
TypeScript 复制代码
import React from 'react';
import styles from './index.less';
import classnames from 'classnames';
const Home: React.FC = () => {
    return (
        <div>
            <h1 className={classnames(styles.list,'main')} >Welcome to the Home Page</h1>
            <p className={styles.list}>This is a simple home page.</p>
        </div>
    );
};

export default Home;
相关推荐
光影少年6 分钟前
RN原生交互 & 桥接
前端·javascript·react native·react.js·前端框架
无人生还15 分钟前
从 Vue3 到 React · 快速上手系列第 4 篇:条件渲染与列表渲染
前端·vue.js·react.js
咩咩啃树皮22 分钟前
第46篇:Vue3 Router工程化进阶——懒加载+嵌套路由+全局守卫+权限控制
javascript·vue.js·ecmascript
为你学会写情书22 分钟前
手写 Mini React 核心原理解析
react.js
触底反弹30 分钟前
💡 React 父子组件通信:一个进度条教会我的 5 件事
前端·react.js·面试
咩咩啃树皮31 分钟前
第44篇:Vue3侦听器完全精讲——watch与watchEffect区别、深度监听、异步业务落地
前端·javascript·vue.js
漂移的电子42 分钟前
解决Vue3 + TypeScript + Vite搭建的项目,动态路由页面加载失败的最隐蔽原因
javascript·ubuntu·typescript
前鼻音太阳熊1 小时前
【MES系统】- 工业HMI状态机可视化实践:从手写SVG到Cytoscape.js的技术选型与踩坑
开发语言·javascript·ecmascript
晓得迷路了1 小时前
栗子前端技术周刊第 139 期 - Nuxt 4.5、Vue 3.6 RC、Angular 发布节奏...
前端·javascript·vue.js
এ慕ོ冬℘゜2 小时前
原生 select 下拉框搜索失效踩坑:文本搜索与 ID 匹配不对应问题排查
前端·javascript·html