JSXでカスタムhtml属性を追加する方法
2023-08-15 20:12:25
質問
理由は様々ですが、JSXで単純に要素にカスタム属性を追加するにはどうしたらいいのでしょうか?
どのように解決するのですか?
EDIT: React 16を反映して更新しました。
カスタム属性は、React 16 でネイティブにサポートされています。これは、カスタム属性を要素に追加するのが
render
関数に追加するのと同じくらい簡単です。
render() {
return (
<div custom-attribute="some-value" />
);
}
もっと詳しく
https://reactjs.org/blog/2017/09/26/react-v16.0.html#support-for-custom-dom-attributes
https://facebook.github.io/react/blog/2017/09/08/dom-attributes-in-react-16.html
前回の回答(React 15以前)
カスタム属性は現在サポートされていません。詳しくはこのオープンイシューをご覧ください。 https://github.com/facebook/react/issues/140
回避策として、以下のようなことを
componentDidMount
:
componentDidMount: function() {
var element = ReactDOM.findDOMNode(this.refs.test);
element.setAttribute('custom-attribute', 'some value');
}
参照 https://jsfiddle.net/peterjmag/kysymow0/ を参照してください。(これは このコメント .)
関連
-
[解決済み] 配列から特定の項目を削除するにはどうすればよいですか?
-
[解決済み] jQueryで要素が非表示になっているかどうかを確認するには?
-
[解決済み] JavaScriptで "use strict "は何をするのか、その根拠は?
-
[解決済み] event.preventDefault() vs. return false
-
[解決済み] リンクのように動作するHTMLボタンを作成する方法
-
[解決済み] Node.jsを使うタイミングをどう判断するか?
-
[解決済み】なぜHTMLは "chucknorris "を色と見なすのか?
-
[解決済み】別のウェブページにリダイレクトするにはどうすればいいですか?
-
[解決済み] 文字列がhtmlであるかどうかをチェックする
-
[解決済み] jQueryのバージョン1、バージョン2、バージョン3の違いは何ですか?[クローズド]
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] 上級者向けJavaScript。この関数はなぜ括弧でくくられるのですか?重複
-
[解決済み] Javascriptによるタッチスクリーンデバイスの検出
-
[解決済み] チェックボックスが選択されているかどうかを確認するjQuery
-
[解決済み] reactのrender関数でdynamic hrefを作成するには?
-
[解決済み] jQueryの$という記号の意味は何ですか?
-
[解決済み] moment.jsでミュータビリティを回避するには?
-
[解決済み] Chromeの拡張機能開発にWebStormを使用するにはどうすればよいですか?
-
[解決済み] javascriptでオプションのパラメータを扱う
-
[解決済み] <ng-content>が空かどうかを確認する方法は?(これまでのAngular 2+で)
-
[解決済み] JavaScriptの文字列プリミティブとStringオブジェクトの違いは何ですか?