React 如何避免 css 覆盖其他组件?

弗拉德

我正在尝试创建使用 AG-Grid 表的 React 应用程序。以前我自定义表格并通过覆盖 css 删除了 ag 网格的边框。我用这段代码来做到这一点。

.ag-root-wrapper {
    border: solid 0px !important;
    border-color: var(--ag-border-color, white) !important;
}

但是我注意到我只用于一个组件的代码影响了整个应用程序。我很好奇,也许有办法只为特定组件在本地导入 css?这是我为组件导入 css 的方式

import './Statistics.css'
import { AgGridColumn, AgGridReact } from 'ag-grid-react';

const Statistics = () => {
    return (
    <div className='content'>
     <div className='content-left'>
      <div className="ag-theme-alpine">
        <AgGridReact
           rowData={data}
            style={{borderColor: 'red'}}
            rowSelection="single"
            filter={false}
        >
         <AgGridColumn
          headerName="Date"
          field="date"
          resizable={true}
          filter={false}
          width={130}
          flex={1}
          sort={'asc'}
          cellStyle={{fontSize: '1vw'}}
         />
       </AgGridReact>
      </div>
     </div> 
    </div>
     )}

export default Content;
丹尼·欧莱特

当您使用纯 css 或 css 预处理器(Sass、less..)时,导入的 css 将始终对您的应用程序是全局的。将每个组件的范围限定在唯一的类名中非常有用,这样您就可以对 css 进行范围。

import './Statistics.css'
import { AgGridColumn, AgGridReact } from 'ag-grid-react';

const Statistics = () => {
    return (
+   <div className='root-statistics'>
    <div className='content'>
     <div className='content-left'>
      <div className="ag-theme-alpine">
        <AgGridReact
           rowData={data}
            style={{borderColor: 'red'}}
            rowSelection="single"
            filter={false}
        >
         <AgGridColumn
          headerName="Date"
          field="date"
          resizable={true}
          filter={false}
          width={130}
          flex={1}
          sort={'asc'}
          cellStyle={{fontSize: '1vw'}}
         />
       </AgGridReact>
      </div>
     </div> 
    </div>
+   </div>
     )}

export default Content;
.root-statistics .ag-root-wrapper {
    border: solid 0px !important;
    border-color: var(--ag-border-color, white) !important;
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

更改React组件的CSS会在所有其他页面上生效

React.js如何从其他组件更改组件的状态

要求React组件中的CSS也影响其他组件

从CSS的其他类进行@extend时,如何覆盖CSS样式?

如何为Material-UI React组件覆盖@media CSS

如何为React类组件声明其他属性?

CSS ::在将文本右移之前,如何避免/覆盖?

如何避免React功能组件过时的状态

如何在React中用其他组件内容替换当前组件内容

如何使用react-testing-library测试由其他组件组成的组件?

如何使用情感CSS覆盖React组件的CSS?

如何在React中其他组件的MAP中插入组件?

如何避免在React中重新渲染组件?

如何覆盖React Native组件?

Angular:覆盖其他组件的CSS

如何避免其他CSS文件/类覆盖元素?

CSS类覆盖其他

如何在不使用其他库的情况下在React组件中编写内联CSS?

如何在 React Native 上以干净的方式与其他组件共享组件逻辑?

如何测试使用 props 渲染其他组件的 React 组件?

React - 子组件样式表覆盖其他子组件的样式表

如何从其他组件 React Native 更新主组件状态

如何区分样式组件是使用 React 组件还是其他样式组件/原生标签创建的

如何在 React 中覆盖物化 css

如何从 React 中的表单组件更新其他组件状态

react中如何控制其他组件的css?

如何覆盖css并使用react js中的另一个组件导入

react router 如何只渲染他的路由中的组件而没有其他组件?

如何避免从 BootstrapVue 覆盖 css?