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 ページ出力で従うべきいくつかの原則の要約

推薦する

マークアップ言語 - アンカー

前: マークアップ言語 - フレーズ要素 オリジナルソース 第 7 章 アンカーHTML のリンクの...

25 個の CSS フレームワーク、ツール、ソフトウェア、テンプレートを共有

スプライトカウダウンロード CSS リントダウンロード プレフィックスダウンロード 1140px C...

LINUX でポートが占有されているかどうかを確認する方法

ポートが占有されているかどうかは、これまで一度もわかりませんでした。多くの人に尋ねて、ようやくわかり...

IMG での UserMap の使用例

usemap は <img> タグの属性であり、使用するイメージ マップの名前を指定する...

MySQL v5.7.18 解凍バージョンのインストール詳細チュートリアル

MySQLをダウンロード5.1.1.1 より前のバージョン私のコンピュータは64ビットなので、Win...

ネイティブ js を使用してライブ バレット スクリーンのスクロール効果をシミュレートします。

目次1. 基本原則2. 特定のコード要約する1. 基本原則まず、生放送エリアを10の部分に分割し(個...

WeChat アプレットカスタムタブバーステップ記録

目次1. はじめに2. タブバーのスタイルをカスタマイズする3. カスタムタブバーと関連設定を導入す...

jsを使用して簡単な抽選機能を実現する

この記事では、参考までに、簡単な抽選機能を実装するためのjsの具体的なコードを共有します。具体的な内...

MySQL テーブルの追加、削除、変更、クエリの基本チュートリアル

1. 作成する [テーブル名] (フィールド1、フィールド2、...) 値 (値1、値2、...) ...

Zabbix パスワードをリセットする方法 (ワンステップ)

問題の説明長い間アカウントパスワードを入力して Zabbix にログインしていないため、管理者パスワ...

ボタンに醜い灰色の枠線が付いています。これを削除するにはどうすればよいですか?

ダイアログをクロージャで使用し、右上隅の向こう側に閉じるボタンがあるダイアログを描画しました。ボタン...

Nginx で WordPress 擬似静的を設定する方法の例

Baidu の擬似静的の説明を引用します。擬似静的は、実際の静的に相対的です。通常、検索エンジンの使...

VMware vCenter の不正な任意ファイルアップロードの脆弱性 (CVE-2021-21972) について

背景CVE-2021-21972 VMware vCenter における認証されていないコマンド実行...

MySQLがデータの削除を推奨しない理由

目次序文InnoDB ストレージ アーキテクチャInnodb テーブルスペースインドストレージディス...

MySQLテーブル構造を変更するコマンドを表示する

簡単な説明エディターはデータベースのエンコードが間違っているために問題に遭遇することが多く、これは頭...