実際のプロジェクトでElementUIを使用する手順の詳細な説明

実際のプロジェクトでElementUIを使用する手順の詳細な説明

1. テーブル自動ソート

目的: 雇用日の後にある上矢印と下矢印をクリックして、現在のページのデータを雇用日に従って昇順または降順に並べ替えます。

アイデア: el-table-column に sortable を追加する

ソートとは、取得したデータをフロントエンドでのみソートすることです。

参考: https://element.eleme.io/#/zh-CN/component/table#pai-xu

コード実装(参考):

<!-- 1. フィールドでソートする必要があるフィールド名を定義します-->
 
<el-table :data="リスト" border :default-sort="{prop: 'workNumber'}">
</el-table>
 
<!-- 2. フィールド列に prop 属性と sortable 属性が宣言されていることを確認します -->
 
<el-table-column label="求人エントリー時間" sortable prop="timeOfEntry">
</el-table-column>

2. ページング機能

目標(効果):ページングデータ取得ロジックを実装する

アイデア: ページング コンポーネントのプロパティ要件に従って構成するだけです。

ステップ:

ステップ1: 補足データ項目

el-paginationコンポーネントの要件に従って、ページにページング関連のデータ項目を追加します。

データ() {
  戻る {
    //その他を省略合計: 0,
    page: 1, // 現在のページ番号 size: 5, // ページあたりのレコード数 total: 0 // レコードの総数 }
}

ステップ2: ページ構造

<div スタイル="高さ: 60px; マージントップ: 10px">
<!-- ページネーション -->
        <el-ページネーション
          layout="total, sizes,prev, pager, next, jumper"
          :total="合計"
          :page-size="サイズ"
          :ページサイズ="[2,5,10]"
          @current-change="hCurrentChange"
          @size-change="hSizeChange"
        />
</div>

ステップ3: ページングロジックを実装する

// 現在クリックされているページ番号を自動的に受け取ります hCurrentChange(curPage) {
      // アラート(現在のページ)
      // 1. ページ番号を更新する this.page = curPage
      // 2. リクエストを再送信 this.loadEmployee()
    },
    // ページあたりのアイテム数 hSizeChange(curSize) {
      // アラート(サイズ)
      // 1. ページあたりのエントリ数を更新します this.size = curSize
      // 2. リクエストを再送信 this.loadEmployee()
    },

3.el-checkbox-group 複数選択ボックス

効果

使用上の注意:

複数選択を示すために使用される el-checkbox-group の場合:

v-modelの値は配列です(複数の選択を示します)

子要素 el-checkbox の label 属性によって、この項目を選択した後の値が決まります。

テンプレート

<el-チェックボックスグループv-model="roleIds">
  <el-checkbox label="110">管理者</el-checkbox>
  <el-checkbox label="113">開発者</el-checkbox>
  <el-checkbox label="115">人事</el-checkbox>
</el-チェックボックスグループ>

データ

データ () {
  戻る {
    roleIds: [] // 現在選択されている権限リストを保存します}
}

4. カレンダーコンポーネントをカプセル化する

効果:

アイデア: このコンポーネントは比較的大きいため(ホームページにも多くのコードがあります)、別のコンポーネントとして提案します。

ステップ 1: コンポーネントをカプセル化する (登録、導入、使用の 3 つのステップ)

ステップ2: ホームページでカレンダーコンポーネントを使用する

<el-card クラス="ボックスカード">
  <div スロット="ヘッダー" クラス="ヘッダー">
    <span>勤務カレンダー</span>
  </div>
  <!-- カレンダー コンポーネントを配置します -->
  <カレンダー />
</el-card>

ステップ3: スロットを使用してカレンダーコンテンツの表示をカスタマイズする

<テンプレート>
  <el-calendar v-model="現在の日付">
    <テンプレートスロット="dateCell">
      <div class="date-content">
        <span class="text">01</span>
        <span class="rest">休憩</span>
      </div>
    </テンプレート>
  </el-calendar>
</テンプレート>
 
<スクリプト>
エクスポートデフォルト{
  データ() {
    戻る {
      curDate: 新しい日付()
    }
  }
}
</スクリプト>

5. antv-G2を使用してレーダーチャートを実装する

効果:

この種のグラフは echarts でも利用できます。ここでは Ant Data Visualization Department の製品である antv-G2 を使用します。

https://antv.vision/en

https://g2.antv.vision/en/examples/radar/radar#basic

ステップ1: 必要な依存関係をインストールする

npm インストール @antv/データセット @antv/g2

ステップ2: レーダーチャートを実装するためのコンポーネントを作成する

以下のコードは公式ウェブサイトから参照されています: https://g2.antv.vision/zh/examples/radar/radar#basic

<テンプレート>
  <div id="コンテナ" />
</テンプレート>
 
<スクリプト>
'@antv/data-set' から DataSet をインポートします。
'@antv/g2' から { Chart } をインポートします
エクスポートデフォルト{
  マウント() {
    定数データ = [
      { 項目: '作業効率'、a: 70、b: 30 }、
      { 項目: '出席'、a: 60、b: 70 }、
      { 項目: 'ポジティブさ'、a: 50、b: 60 }、
      { 項目: '同僚を助ける'、a: 40、b: 50 }、
      { 項目: '自主学習'、a: 60、b: 70 }、
      { 項目: '精度'、a: 70、b: 50 }
    ]
    const { データビュー } = データセット
    const dv = 新しい DataView().source(データ)
    dv.transform({
      タイプ: '折りたたみ'、
      fields: ['a', 'b'], // フィールドセットを展開 key: 'user', // キーフィールド value: 'score' // 値フィールド })
 
    const チャート = 新しいチャート({
      コンテナ: 'コンテナ',
      自動調整: true、
      高さ: 500
    })
    チャートデータ(dv.rows)
    chart.scale('スコア', {
      最小: 0,
      最大: 80
    })
    chart.coordinate('polar', {
      半径: 0.8
    })
    チャート.ツールチップ({
      共有: true、
      クロスヘアを表示: true、
      十字線:
        ライン: {
          スタイル: {
            線破線: [4, 4],
            ストローク: '#333'
          }
        }
      }
    })
    chart.axis('item', {
      行: null、
      ティックライン: null、
      グリッド: {
        ライン: {
          スタイル: {
            ラインダッシュ: null
          }
        }
      }
    })
    chart.axis('スコア', {
      行: null、
      ティックライン: null、
      グリッド: {
        ライン: {
          タイプ: 'line'、
          スタイル: {
            ラインダッシュ: null
          }
        }
      }
    })
 
    チャート
      。ライン()
      .position('アイテム*スコア')
      .color('ユーザー')
      .サイズ(2)
    チャート
      。ポイント()
      .position('アイテム*スコア')
      .color('ユーザー')
      .shape('円')
      .サイズ(4)
      。スタイル({
        ストローク: '#fff',
        線幅: 1,
        塗りつぶしの不透明度: 1
      })
    チャート
      。エリア()
      .position('アイテム*スコア')
      .color('ユーザー')
    チャート.レンダリング()
  }
}
</スクリプト>

6. 多言語サポート

効果: vue-i18nは Vue プロジェクトでの多言語サポートに使用されます

参考: https://kazupon.github.io/vue-i18n/zh/started.html

目的: elementUIの中国語-英語切り替え機能を実装し、中国語切り替えの効果を体験する

ステップ1: 国際パッケージをインストールする

[email protected] の npm を使用します

ステップ2: ElementUIの多言語設定

要素言語パッケージファイルsrc/lang/index.jsをインポートします。

//多言語サポートを設定する import Vue from 'vue' //Vueを導入する
import VueI18n from 'vue-i18n' // 国際プラグインパッケージをインポート import locale from 'element-ui/lib/locale'
import elementEN from 'element-ui/lib/locale/lang/en' // Ele.me の英語パッケージをインポート import elementZH from 'element-ui/lib/locale/lang/zh-CN' // Ele.me の中国語パッケージをインポート Vue.use(VueI18n) // 国際化パッケージをグローバルに登録 // 国際化プラグインのインスタンスを作成 const i18n = new VueI18n({
  //言語タイプを指定します。中国語の場合はzh、英語の場合はen。ロケール: 'zh'、
  // プラグインの言語データメッセージに elementUI 言語パックを追加します: {
    // 英語環境の言語データ en: {
      ...要素EN
    },
    // 中国語環境の言語データ zh: {
      ...要素ZH
    }
  }
})
// elementUI の言語変換関係を設定します。locale.i18n((key, value) => i18n.t(key, value))
 
デフォルトの i18n をエクスポートする

実際のプロジェクトで使用されているElementUIの機能概要については、これで終了です。より関連性の高いElementUIプロジェクト使用概要コンテンツについては、123WORDPRESS.COMの過去の記事を検索するか、以下の関連記事を引き続き閲覧してください。今後とも123WORDPRESS.COMをよろしくお願いいたします。

以下もご興味があるかもしれません:
  • Vue + ElementUI プロジェクトで webpack を使用して MPA を出力する方法
  • Vue プロジェクトで現在使用されている elementUI バージョンを表示する方法
  • Vue3+elementui plusでプロジェクトを作成する方法
  • vueプロジェクトにelementUIコンポーネントを導入する方法の詳細な説明
  • ElementUI Treeツリーコントロールを使用してノードにアイコンを追加します
  • vue+elementUi 画像アップロードコンポーネントの使用方法の詳細な説明
  • vue elementUIはタブを使用してナビゲーションバーにリンクします
  • elementUI selectコンポーネントの使い方と注意点を詳しく解説

<<:  dockerネットワーク双方向接続の詳細な説明

>>:  MybatisはSQLクエリのインターセプションと変更の詳細を実装します

推薦する

CSS 不透明度子要素が親要素の透明度を継承するためのソリューションの詳細な説明

プロジェクト ページの作成中に、子要素が親要素の透明度を継承するという問題に遭遇しました。多くのドキ...

Linux netfilter/iptables の知識ポイントの詳細な説明

ネットフィルターNetfilter は、パケット フィルタリング、転送、およびアドレス変換 NAT ...

シンプルなプログレスバーを作成するための HTML+CSS

1. HTMLコードコードをコピーコードは次のとおりです。経験値: <span class=...

MySQLがOracleのnvlと同様の機能を持つことができるかどうかについての簡単な議論

isnullの代わりにifnullを使用するisnull は、null かどうかを判断するために使用...

よくある MySQL テーブル設計エラーの概要

目次間違い1: データの列が多すぎる誤解2: 共同クエリが多すぎる誤解3: ENUMの代わりにSET...

VMware は Centos7 システムの PXE+kickstart 無人インストールの詳細なプロセスを実装します

目次PXEはサーバーの無人バッチ展開を実装します1. PXEの概要1.1 PXEとは何か1.2 キッ...

VMware での Linux CentOS6.9 インストール グラフィック チュートリアル

技術初心者として、初めて Linux システムをインストールするプロセスを記録しています。まず、Wi...

js はランダムロールコールを実装します

この記事では、ランダムロールコールを実装するためのjsの具体的なコードを参考までに共有します。具体的...

Mysql WorkBench のインストールと設定のグラフィックチュートリアル

この記事では、Mysql WorkBenchのインストールと設定のグラフィックチュートリアルを参考ま...

WeChatミニプログラムページとコンポーネント間の情報伝達と機能呼び出し

今回は、私自身の開発経験を踏まえて、以下の観点で関連内容を解説します。ページからコンポーネントにデー...

select @@session.tx_read_only が DB に大量に出現するのはなぜですか?

問題を見つける上位の SQL ステートメントを取得すると、DB が大量のselect @@sessi...

Vue3 Reactivityの実装方法を教えます

目次序文始めるちょっとした考えコードの実装真似する実装トラックトリガーの実装観察の実装計算の実装序文...

Linux CentOS でスクリプトを定期的に実行するように設定する方法

多くの場合、サーバーでスクリプトを定期的に実行して操作をトリガーする必要があります。たとえば、Qin...

VMware Workstation 仮想マシンのインストール操作方法

仮想マシンは非常に便利なテストソフトウェアです。ハードウェアに損傷を与えることなく、さまざまなテスト...

JavaScript の矢印関数と通常の関数の違いの詳細な説明

この記事では、JavaScriptにおけるアロー関数と通常の関数の違いについて解説します。具体的な内...