[解決済み] React 16におけるclassとclassNameの比較
2023-02-01 07:20:37
質問
React16では、DOMに属性を渡すことができるようになりましたね。ということは、classNameの代わりに'class'が使えるということですよね?
以前のバージョンのReactとの後方互換性以外に、classよりもclassNameをまだ使う利点があるのかどうか気になるところです。
どのように解決するのですか?
class
はjavascriptのキーワードで、JSXはjavascriptの拡張機能です。これが、Reactで
className
の代わりに
class
.
その点では何も変わっていません。
これをもう少し拡大すると A キーワード は、あるトークンが言語の構文において特別な意味を持つことを意味します。例えばで。
class MyClass extends React.Class {
トークン
class
は、次のトークンが識別子であり、その後に続くものがクラス宣言であることを示します。参照
Javascriptキーワード+予約語
.
トークンがキーワードであるということは、例えば、ある表現では使えないということです。
// invalid in older versions on Javascript, valid in modern javascript
const props = {
class: 'css class'
}
// valid in all versions of Javascript
const props = {
'class': 'css class'
};
// invalid!
var class = 'css';
// valid
var clazz = 'css';
// invalid!
props.class = 'css';
// valid
props['class'] = 'css';
問題のひとつは、将来何らかの別の問題が発生しないかどうか、誰にもわからないということです。どのプログラミング言語もまだ進化していますし
class
は実際に何らかの新しい相反する構文で使われる可能性があります。
にはそのような問題はありません。
className
.
関連
-
[解決済み] react.jsで複数のモジュールをエクスポートする
-
[解決済み] Reactルータを使ったプログラムによるナビゲーション
-
[解決済み] React JSX内のループ
-
[解決済み] Reactのこの3つの点は何をするところなのでしょうか?
-
[解決済み] React-routerのURLを更新したり、手動で書き込んだりするとうまくいかない
-
[解決済み] React NativeとReactの違いは何ですか?
-
[解決済み] setStateを呼び出さずにReactコンポーネントを強制的に再レンダリングすることは可能ですか?
-
[解決済み] Reactコンポーネントに条件付きで属性を追加するにはどうすればよいですか?
-
[解決済み] React jsのonClickはメソッドに値を渡すことができない
-
[解決済み] Reactで要素を表示・非表示にする
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】ReactJS: マテリアルuiのブレークポイントについて
-
[解決済み】ngrokがReact devサーバーに接続しようとすると、無効なホストヘッダが表示される。
-
[解決済み] material-ui-pickers KeyboardDatePicker をモーメントで使用するには?
-
[解決済み] SVGサークル内の画像にボーダーを追加する方法
-
[解決済み] リアクトです。<tr>は<td>の子として表示できません。コメント > td > tr を参照してください。
-
[解決済み] TypeError: reactjs の未定義のプロパティ 'status' を読み取ることができません。
-
[解決済み] react router dom v4でwebpack dev serverを構成する方法は?
-
[解決済み] validateDOMNesting警告React
-
[解決済み] ESLintとTSLintの違い【クローズド】について
-
[解決済み] HTMLのプロパティと属性の違いは何ですか?