element-ui は、Ele.me のフロントエンド チームが開発者、デザイナー、製品マネージャー向けにリリースした Vue.js 2.0 ベースのデスクトップ コンポーネント ライブラリです。一方、モバイル フォン向けの対応するフレームワークは Mint UI です。 UI スタイル全体がシンプルで実用的であり、開発者の効率も大幅に向上します。非常に人気のあるコンポーネント ライブラリです。 1. 新しい1. ボタンを追加する 2. ポップアップ ウィンドウを開くためのメソッドに新しいイベントを追加します。 **3. 確認、ポップアップ確認イベントを追加し、追加と変更は同じ確認イベントを共有し、IDを使用して区別します **3. 新しいイベント 新しく追加されたインターフェースを呼び出して、IDがあるかどうかを確認します。ない場合は、新しく追加されたインターフェースを呼び出します。 II. 変更2-1. 変更ボタン、テーブル行編集ボタンは、scope.rowを使用して現在の行のデータを取得します。 2-2. イベントを変更し、現在の行データをフォームに割り当てると、現在の行データがエコーアウトされます。 2-3. イベントを変更する インターフェイスを変更して ID があるかどうかを確認し、ある場合は変更インターフェイスを呼び出します** 以下は直接のコードです <テンプレート> <div> <!-- パンくずナビゲーション --> <el-breadcrumb セパレータークラス="el-icon-arrow-right"> <el-breadcrumb-item :to="{ path: '/Welcome' }">ホーム</el-breadcrumb-item> <el-breadcrumb-item>権限管理</el-breadcrumb-item> <el-breadcrumb-item>ロールのリスト</el-breadcrumb-item> </el-breadcrumb> <!-- カード --> <el-card クラス="ボックスカード"> <!-- 追加ボタン--> <el-row :gutter="20"> <el-col :span="6"> <div class="grid-content bg-purple"></div> <el-button type="primary" @click="onhandAdd">役割を追加</el-button> </el-col> </el-row> <!-- 表 --> <el-table :data="テーブルデータ" border="" style="幅: 100%"> <el-table-column type="expand"> <テンプレート スロット スコープ="スコープ"> <el-row :class="['bdbottom',i1 === 0? 'bdtop' : '', 'vcenter'] " :ガター="20" :span="6" v-for="(item_ong,i1) スコープ内の行の子" :key="item_ong.id" > <!-- レベル 1 --> <el-col :span="5"> <el-tag>{{item_ong.authName}}</el-tag> <i class="el-icon-caret-right"></i> </el-col> <!-- 中等教育および高等教育レベル --> <el-col :span="19"> <!-- 第 2 レベルの権限 --> <el-row v-for="(item_two,i2) in item_ong.children" :key="i2"> <el-col :span="6"> <el-tag type="success">{{item_two.authName}}</el-tag> <i class="el-icon-caret-right"></i> </el-col> <el-col :span="18"> <elタグ タイプ="警告" v-for="(item_three,i3) in item_two.children" :key="i3" >{{item_three.authName}}</el-tag> <i class="el-icon-caret-right"></i> </el-col> </el-row> </el-col> </el-row> </テンプレート> </el-table-column> <el-table-column ラベル="#" タイプ="インデックス" 幅="80"></el-table-column> <el-table-column label="ロール名" prop="roleName"></el-table-column> <el-table-column label="役割の説明" prop="roleDesc"></el-table-column> <el-table-column label="操作" prop="id"> <テンプレート スロット スコープ="スコープ"> <el-ボタン タイプ="プライマリ" アイコン="el-icon-edit" サイズ="小" @click="handleEdit(scope.$index, scope.row)" >編集</el-button> <el-button type="warning" icon="el-icon-delete" size="small">削除</el-button> <el-button type="danger" icon="el-icon-edit" size="small">権限</el-button> </テンプレート> </el-table-column> </el-table> </el-card> <!-- 編集ポップアップ ボックスを追加しました --> <el-ダイアログ :title="タイトルを追加" :visible.sync="ダイアログを表示" 幅="40%" :before-close="ハンドルを閉じる" > <el-フォーム :model="ルールフォーム" :rules="ルール" ref="refルールフォーム" ラベル幅="100px" クラス="デモルールフォーム" > <el-form-item label="ロール名" prop="roleName"> <el-input v-model="ruleForm.roleName"></el-input> </el-form-item> <el-form-item label="役割の説明" prop="roleDesc"> <el-input v-model="ruleForm.roleDesc"></el-input> </el-form-item> </el-form> <span slot="フッター" class="ダイアログフッター"> <el-button @click="dialogVisible = false">キャンセル</el-button> <el-button type="primary" @click="dialogVisibleConfirm">確認</el-button> </span> </el-ダイアログ> </div> </テンプレート> <スクリプト> エクスポートデフォルト{ データ() { 戻る { テーブルデータ: [], ダイアログ表示: false、 addtitle: "役割を追加", ルールフォーム: { ロール名: "", 役割の説明: "" }, すべて: "", // 検証ルール: { ロール名: [ { 必須: true、メッセージ: "キャラクター名を入力してください"、トリガー: "blur" }、 { 最小: 3、最大: 5、メッセージ: "長さは 3 文字から 5 文字の間です"、トリガー: "ぼかし" } ]、 roleDesc: [{ 必須: true、メッセージ: "ロールの説明"、トリガー: "ぼかし" }] } }; }, 作成された() { this.tabList(); }, メソッド: { // テーブルインターフェースリスト tabList() { this.$api.jurisdiction.rolelist().then(res => { console.log(res.data.data, "]]]]]]]"); テーブルデータを返します。 }); }, // 追加 onhandAdd() { this.dialogVisible = true; }, ハンドルクローズ(完了) { this.dialogVisible = false; }, // 編集 handleEdit(index, row) { console.log(インデックス、行ID); this.dialogVisible = true; //ポップアップボックスを表示します this.ruleForm = row; //現在の行データを行に書き込み、現在の行データをフォームに割り当てます this.allid = row.id; //IDをグローバルに保存します}, // 確認ダイアログVisibleConfirm() { // 新しいインターフェース if (!this.allid) { this.$api.jurisdiction.addrole(this.ruleForm) .then(res => { // コンソール.log(res,"new") this.$message.success("正常に追加されました"); // 正常に追加されたことを示すメッセージプロンプト this.$refs.refRuleForm.resetFields(); // テーブルデータをクリア this.dialogVisible = false; // ポップアップボックスを閉じる this.tabList(); // リストを更新する }) .catch(res => { this.$message.error("追加に失敗しました"); }); } それ以外 { // インターフェースを変更する let id = this.allid パラメータ = { ロール名:this.ruleForm.roleName、 ロールの説明:this.ruleForm.roleDesc、 } this.$api.jurisdiction.edtrole(id,params) .then(res => { console.log(res,"変更") this.$message.success("変更に成功しました"); this.$refs.refRuleForm.resetFields(); this.dialogVisible = false; this.tabList(); }) .catch(res => { this.$message.error("変更に失敗しました"); }); } } } }; </スクリプト> <スタイルスコープ> .bdtop { 上境界線: 1px 実線 #eee; パディング上部: 10px; } .bdボトム{ 下境界線: 1px 実線 #eee; パディング下部: 10px; パディング上部: 10px; } .elタグ{ マージン: 10px 0px; } .vcenter { ディスプレイ: フレックス; アイテムの位置を中央揃えにします。 } </スタイル> 上記は、vue+elementui を使用して共有ポップアップ ボックスを追加および変更するための完全なコードの詳細です。vue elementui ポップアップ ボックスの詳細については、123WORDPRESS.COM の他の関連記事に注目してください。 以下もご興味があるかもしれません:
|
<<: Mysqlデータテーブルでワームレプリケーションを使用する方法
>>: Centos8 システムの VMware インストール チュートリアル図 (コマンド ライン モード)
序文WeChat ミニプログラムは新しいオープン機能を提供します!ついにミニプログラムにHTMLペー...
開発に Vue を使用する場合、次のような状況に遭遇することがあります。Vue インスタンスを生成し...
ssh は私が最も頻繁に使用する 2 つのコマンドライン ツールのうちの 1 つです (もう 1 つ...
1.1 nginxインストールパッケージとインストールスクリプトをクライアントにコピーし、スクリプト...
1. 最左プレフィックス原則 - 複数の列にインデックスが付けられている場合は、最左プレフィックス原...
タッチコマンドこれには 2 つの機能があります。1 つは、既存のファイルの時間タグを現在のシステム時...
マウスをドラッグしてページのスクリーンショットを撮ります(指定した領域にスクリーンショットをドラッグ...
では、ドメイン名を登録して仮想ホストを購入した後、IE でドメイン名を入力して Web サイトを開く...
コンテナは Docker のもう一つの中心的な概念です。簡単に言えば、コンテナとは、独立して実行され...
今回はReact-Flaskフレームワーク上でアップロードコンポーネントを開発するスキルについてお話...
序文データ型変換とは何ですか?フォームまたはプロンプトを使用して取得されるデフォルトのデータ型は文字...
1. まずリクエスト設定ファイルを見て、axios.createメソッドを見てください。baseUR...
Linux に Scala 環境をインストールするのは非常に簡単です。Ubuntu 環境であれば、さ...
Ubuntu にインストールされているバージョンをアンインストールします。 sudo apt-get...
コードをコピーコードは次のとおりです。 wmode パラメータ:透過モード: z-indexを使用し...