gpt4 book ai didi

reactjs - React 类名命名约定

转载 作者:行者123 更新时间:2023-12-03 13:40:31 29 4
gpt4 key购买 nike

众所周知,我们应该在原始 html 中使用小写和破折号作为 css 类名(例如 <div class="lower-case-dash" /> )。那么在 React JSX 中呢?

对于 html 元素和其他 React 组件,css 类名的命名约定是什么?驼峰式还是破折号?

<div className="divClass">Something</div>
<div className="DivClass">Something</div>
<div className="div-class">Something</div>
<SomeComponent className="SomeComponent" />
<SomeComponent className="some-component" />

最佳答案

TLDR:PascalCaseBlock__Element--Modifier

查看官方doc create-react-app。它提供了创建自定义组件的最小示例。 jscss 文件名以及 className 均遵循 PascalCase

// Button.css
.Button {
padding: 20px;
}

// Button.js
import React, { Component } from 'react';
import './Button.css'; // Tell Webpack that Button.js uses these styles

class Button extends Component {
render() {
// You can use them as regular CSS styles
return <div className="Button" />;
}
}

此外,文档还提供了外部 link ,它描述了组件内部元素的 BEM 命名约定 ( link )。

// MyComponent.js
require('./MyComponent.less');
import { Component } from 'react';
export default class MyComponent extends Component {
render() {
return (
<div className="MyComponent">
<div className="MyComponent__Icon">Icon</div>
...
</div>
);
}
}

// MyComponent.less
.MyComponent__Icon {
background-image: url('icon.svg');
background-position: 0 50%;
background-size: fit;
height: 50px;
}

关于reactjs - React 类名命名约定,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57221878/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com