jsx/tsxファイルを直接作成できます 今回のプロジェクト構成は以下のとおりです。 vueファイルではこのように使います // インデックス.vue <テンプレート> <div class="wrapper"> <共通:opt="リスト" /> </div> </テンプレート> <script lang="ts"> 「vue-property-decorator」から Component、Vue をインポートします。 「./components/Common」からCommonをインポートします。 @成分({ 名前:「アプリ」、 コンポーネント: 一般、 }, }) デフォルトクラスAppをエクスポートし、Vueを拡張します。 private list = ["Taobaoに行きたい"、"Baiduに行きたい"、"JDに行きたい"]; } </スクリプト> tsxはこう書いている 'vue' から CreateElement をインポートします。 'vue-property-decorator' から { Component, Vue, Prop } をインポートします。 @成分({ 名前: 'Common' }) デフォルトのクラスCommonをエクスポートし、Vueを拡張します。 @Prop(Object) オプション: 任意[] レンダリング(h: CreateElement) { 戻る <span> { this.opt.map((it) => { <span style="marginRight:10px">{it}</span> を返します }) } </span> } } ページをご覧ください パラメータ渡しの簡単な紹介: 最初のパラメーター: { 2 番目のパラメーター: 3 番目のパラメーター: { レンダリング機能は Vue に多くの柔軟性をもたらします。以前は、子コンポーネントへの何かの挿入をカスタマイズしたい場合、多くの // 上記のindex.vueのデータを変換する プライベートリスト = [ { render: () => ["a", { style: { color: "red" } }, "Taobaoに行きたい"] }, { render: () => ["a", { style: { color: "green" } }, "JDに行きたいです。"] }, { render: () => ["a", { style: { color: "pink" } }, "Baiduに行きたい"] }, ]; これは tsx で書かれています: { this.opt.map((it) => { h(...it.render()) を返します }) } 派手なページをレンダリングできます。 次のように遊ぶこともできます: // tsx 変換 <span> { this.opt.map((it) => { it.render(h) を返します }) } </span> index.vue ページでこれを実行できます。 // インデックス.vue プライベートリスト = [ { レンダリング: (h: CreateElement) => h("a", { style: { color: "red", marginRight: "5px" } }, "Taobaoに行きたい"), }, { レンダリング: (h: CreateElement) => h("a", { style: { color: "green", marginRight: "5px" } }, "JDに行きたい"), }, { レンダリング: (h: CreateElement) => h("a", { style: { color: "pink", marginRight: "5px" } }, "Baiduに行きたい"), }, ]; 結果は同じファンシー 意味不明なラベルもレンダリングできます! // index.vue 変換 { レンダリング: (h: CreateElement) => h( "h1", { スタイル: { 色: "緑", 右余白: "5px" }, }, 「JDに行きます。」 )、 }, レンダリング関数内でイベントを好きなように定義できます。 // インデックス.vue プライベートリスト = [ { レンダリング: (h: CreateElement) => h( 「あ」、 { スタイル: { 色: "赤", 右余白: "5px" }, の上: { クリック: () => this.iWillGoWhere("TB"), }, }, 「タオバオに行きたい」 )、 }] iWillGoWhere(型: 文字列) { const goWhere: 任意 = { TB: () => { alert("Taobaoに行きます!"); }, JD: () => { alert("JDに行きます!"); }, BD: () => { alert("Baiduに行きたい!"); }, }; goWhere[type](); } それでおしまい! これで、vue プロジェクトで react を書く方法についての記事は終わりです。vue プロジェクトで react を書く方法の詳細については、123WORDPRESS.COM の以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。 以下もご興味があるかもしれません:
|
>>: Linux mysql-5.6 でルート パスワードをリセットする方法
ブラウザで入力カーソルがずれる問題の詳しい説明<br />仕事で問題に遭遇し、解決策を探...
純粋な CSS で固定ヘッダーを実装するのが難しい主な理由は 2 つあります。まず、最大のシェアを持...
bash を終了する場合は、次の 2 つのオプションがあります。最初のもの: Ctrl + d を押...
1. コモンズCommonjsはNode.jsのカスタムモジュールですCommonjs 仕様は、Ja...
前回のブログ投稿では、レジストリのプライベート ウェアハウスについて説明しました。今日は、Harbo...
XHTML CSS ページ制作中に遭遇する問題の解決策は、解決策と呼ぶには少々大げさです。せいぜい、...
この記事では、MySQL 5.7.24のインストールと設定のチュートリアルを参考までに紹介します。具...
MySQL パフォーマンスの最適化MySQL パフォーマンスの最適化とは、リソースを合理的に配置し、...
この記事では、参考までにvueキャンバスのタイムライン描画の具体的なコードを紹介します。具体的な内容...
前提条件: Percona 5.6 バージョン、トランザクション分離レベルは RR mysql>...
データの挿入テーブル名(列名1、列名2、列名3)の値(値1、値2、値3)に挿入します。ユーザーに(u...
最初の解決策は、イメージを公開イメージリポジトリにプッシュし、それをプルダウンすることです。 2 番...
実施原則メイングラフィックは、背景と前景の 2 つの要素で構成されています。次のサンプルコードでは、...
目次序文クイックレビュー: JavaScript 関数関数とは何ですか?関数を宣言する関数の呼び出し...
最近、社内に Hadoop テスト クラスターを構築したいので、docker を使用して Hadoo...