VueのTodoListケースの詳しい説明

VueのTodoListケースの詳しい説明

ここに画像の説明を挿入

ここに画像の説明を挿入

<テンプレート>
  <div id="ルート">
    <div class="todo-container">
      <div class="todo-wrap">
        <トップ:received="受信済み" />
        <リスト :todos="todos" :checkTodo="checkTodo" :deleteTodo="deleteTodo" />
        <下部 :todos="todos" :checkAllTodo="checkAllTodo" :clearAllTodo="clearAllTodo" />
      </div>
    </div>
  </div>
</テンプレート>
<スクリプト>
  './components/Top.vue' から Top をインポートします。
  './components/Bottom.vue' から Bottom をインポートします。
  './components/List.vue' からリストをインポートします。
  エクスポートデフォルト{
    名前: 'アプリ'、
    コンポーネント:
      トップ、
      リスト、
      底
    },
    データ() {
      戻る {
        すべて: [{
            id: '001',
            タイトル:「食べる」
            完了: true
          },
          {
            id: '002',
            タイトル:「眠り」
            完了: false
          },
          {
            id: '003',
            タイトル: 「Playing Beans」、
            完了: false
          },
        ]
      }
    },
    メソッド: {
      //ToDoを追加
      受信した(todoObj) {
        todoObj を unshift します。
      },
      //ToDoのチェックを外す
      チェックTodo(id) {
        this.todos.forEach((todo) => {
          //関数本体if (todo.id === id) todo.done = !todo.done;
        })
      },
      //TodoIDを削除する{
        this.todos = this.todos.filter(todo => todo.id !== id)
      },
      //すべて選択または選択解除 checkAllTodo(done) {
        this.todos.forEach((todo) => {
          todo.done = 完了
        })
      },
      // 完了したデータをすべてクリアする clearAllTodo() {
        this.todos = this.todos.filter((todo) => {
          !todo.done を返す
        })
      }
    }
  }
</スクリプト>
<スタイル lang="css">
  /*ベース*/
  体 {
    背景: #fff;
  }
  .btn{
    表示: インラインブロック;
    パディング: 4px 12px;
    下マージン: 0;
    フォントサイズ: 14px;
    行の高さ: 20px;
    テキスト配置: 中央;
    垂直位置合わせ: 中央;
    カーソル: ポインタ;
    ボックスシャドウ: インセット 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
    境界線の半径: 4px;
  }
  .btn-危険{
    色: #fff;
    背景色: #da4f49;
    境界線: 1px 実線 #bd362f;
  }
  .btn-危険:ホバー{
    色: #fff;
    背景色: #bd362f;
  }
  .btn:フォーカス {
    アウトライン: なし;
  }
  .todoコンテナ{
    幅: 600ピクセル;
    マージン: 0 自動;
  }
  .todoコンテナ .todoラップ {
    パディング: 10px;
    境界線: 1px 実線 #ddd;
    境界線の半径: 5px;
  }
</スタイル>

要約する

この記事はこれで終わりです。皆さんのお役に立てれば幸いです。また、123WORDPRESS.COM のその他のコンテンツにも注目していただければ幸いです。

以下もご興味があるかもしれません:
  • VueはTodoListの例をカプセル化し、ブラウザのローカルキャッシュのアプリケーションを実装します。
  • vuex のシンプルな todolist の例の詳細な説明
  • Vue は TodoList から親子コンポーネントの通信を学習します
  • Vuejs はシンプルな todoList 関数とコンポーネントのサンプルコードを実装します
  • vue.js の todoList プロジェクトの例

<<:  CSS でのフレックスレイアウトの詳細な説明

>>:  HTML ページ出力で従うべきいくつかの原則の要約

推薦する

純粋な CSS3 で蝶が羽ばたく様子を再現する例

純粋なCSS3で蝶が羽ばたく様子を再現。まずはその効果をご覧ください どうですか?効果はかなりいいで...

Webpack プロジェクトでローダー プラグインをデバッグする方法

最近、webpackの使い方を学んでいたときに、webpack-replace-loaderの設定正...

表 td 画像水平および垂直中央揃えコード

HTMLコード:コードをコピーコードは次のとおりです。 <td align="cen...

Windows10 HomeバージョンにDockerをインストールするときに発生する問題の概要

Docker ダウンロード アドレス: http://get.daocloud.io/#instal...

Vue3 がデータ監視を実装するためにプロキシを使用する理由の分析

Vue データの双方向バインディング原則ですが、この方法には欠点があり、配列とオブジェクトの部分的な...

2列の水平タイムラインを実装するためのVueサンプルコード

目次1.コンポーネントtimelineH.vueを実装する2. コンポーネントの呼び出しこの記事では...

Macでのファイル権限の表示と設定の詳細な説明

序文Mac システムのターミナルでファイルの権限を変更するには、Linux の chmod コマンド...

ウェブ開発者やデザイナーにとって欠かせないオンラインウェブツールとアプリケーション

これまでの記事で、フロントエンド開発者にとって必須のツール、スクリプト、リソースのコレクションを紹介...

Nginx で Brotli 圧縮アルゴリズムを有効にする方法の例

Brotli は、Zopfli よりも 20 ~ 26% 高い圧縮率を実現できる新しいデータ形式です...

フレックスレイアウトは、1行あたりの固定行数と適応レイアウトを実現します。

この記事では、1行あたりの固定行数+アダプティブレイアウトを実現するフレックスレイアウトを紹介し、皆...

MySQL の高度な機能 - データ テーブル パーティショニングの概念とメカニズムの詳細な説明

目次パーティション分割メカニズムSELECTクエリINSERT操作DELETE操作更新操作パーティシ...

時間のかかるMySQLレコードのSQL例の詳細な説明

mysqlは時間のかかるSQLを記録しますMySQL は、最適化と分析のために、時間のかかる SQL...

HTML 名、ID、クラス (フォーマット/アプリケーション シナリオ/機能) などの違いの紹介。

ページには多くのコントロール (要素またはタグ) があります。これらのタグをより便利に操作するには、...

Linux の一般的な基本コマンドと使用方法

この記事では、一般的な基本的な Linux コマンドとその使用方法を例を使って説明します。ご参考まで...

Macシステムをインストールした後にVMWareがフルスクリーンで表示できない問題を解決する

システム: VMTOOLs ダウンロード:リンク: https://pan.baidu.com/s/...