Vueはシンプルなメモ帳機能を実装します

Vueはシンプルなメモ帳機能を実装します

この記事では、参考までに、簡単なメモ帳機能を実装するためのVueの具体的なコードを紹介します。具体的な内容は次のとおりです。

プレビュー画像:

機能は次のとおりです。

(1)タスクを入力し、Enterキーを押してタスクリストに追加します(重複したタスクは入力できません)

(2)「削除」をクリックすると、対応するタスクが削除されます。

(3)「クリア」をクリックすると、すべてのタスクが削除されます。

(4)タスクの合計数は左下隅に同期して表示されます。

完全なコードは次のとおりです。

<!DOCTYPE html>
<html lang="ja">
 
<ヘッド>
    <メタ文字セット="UTF-8">
    <meta http-equiv="X-UA-compatible" content="IE=edge">
    <meta name="viewport" content="width=デバイス幅、初期スケール=1.0">
    <title>メモ帳</title>
    <スタイル>
        * {
            マージン: 0;
            パディング: 0;
        }
 
        #todoアプリ{
            幅: 600ピクセル;
            背景色: rgba(19, 161, 114, 0.63);
            フォントファミリー: サンセリフ;
        }
 
        .header>h1 {
            パディング: 20px 0;
            テキスト配置: 中央;
            フォントサイズ: 40px;
            色: ホワイトスモーク;
        }
 
 
        .新しいタスク {
            表示: ブロック;
            幅: 500ピクセル;
            高さ: 50px;
            行の高さ: 50px;
            左パディング: 10px;
            マージン: 0 自動;
            フォントサイズ: 20px;
            アウトライン: なし;
            境界線: なし;
        }
 
        .todolist li {
            高さ: 30px;
            行の高さ: 30px;
            左パディング: 15px;
            マージン: 10px 0;
            フォントサイズ: 25px;
            色: 白;
        }
 
        .todolist .item {
            左マージン: 15px;
        }
 
        。破壊する、
        。クリア {
            幅: 50px;
            高さ: 30px;
            フロート: 右;
            色: 白;
            背景色: 透明;
            境界線: なし;
            フォントサイズ: 20px;
        }
 
        .フッター{
            幅: 600ピクセル;
            高さ: 30px;
            パディング: 10px 0;
            垂直位置合わせ: 中央;
        }
 
 
        .footer p {
            表示: インラインブロック;
            左パディング: 15px;
            色: 白;
            フォントサイズ: 20px;
        }
    </スタイル>
</head>
 
<本文>
    <セクション id="todoapp">
        <ヘッダークラ​​ス="ヘッダー">
            <h1>メモ帳</h1>
            <input type="text" v-model="newItem" class="newTask" placeholder="タスクを入力してください" @keyup.enter="add">
        </ヘッダー>
        <セクション>
            <ul class="todolist">
                <li v-for="(リスト内の項目、インデックス)">
                    <div>
                        <span>{{ インデックス + 1 }}</span>
                        <label class="item">{{ アイテム }}</label>
                        <button class="destroy" @click="del(index)">削除</button>
                    </div>
                </li>
            </ul>
        </セクション>
        <フッタークラス="フッター">
            <p class="count">
                アイテム: {{ list.length }}
            </p>
            <button class="clear" @click="clear" v-show="list.length != 0">クリア</button>
        </フッター>
    </セクション>
    <script src="./vue.js"></script>
    <スクリプト>
        constアプリ = 新しいVue({
            el: "#todoapp",
            データ: {
                リスト: [],
                新しいアイテム: ""
            },
            メソッド: {
                追加() {
                    if (this.newItem == "") {
                        戻る;
                    }
                    それ以外 {
                        if (!this.list.includes(this.newItem)) {
                            this.list.push(this.newItem);
                            this.newItem = "";
                        }
                        それ以外 {
                            alert("重複するイベントを追加しないでください!");
                            this.newItem = "";
                        }
                    }
                },
                del(インデックス) {
                    this.list.splice(インデックス、1);
                },
                クリア() {
                    このリスト = [];
                }
            }
        })
    </スクリプト>
</本文>
 
</html>

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

以下もご興味があるかもしれません:
  • vuex 2.0 の詳細な調査と、vuejs 2.0 + vuex 2.0 を使用したメモ帳アプリケーションの構築
  • vue2.0+vuex+localStorage に基づくローカルメモ帳の例
  • メモ帳ケースのVue実装
  • Vueはシンプルなメモ帳を実装する
  • Vueは小さなメモ帳機能を実装しました
  • vue シンプルメモ帳開発の詳しい説明
  • Vue Notepadの例の詳細な説明
  • Vueはメモ帳機能を実装する
  • vue-cli+webpack メモ帳プロジェクトの作成
  • Vuex はメモ帳機能を実装します

<<:  IDEA は Docker プラグインを使用します (初心者向けチュートリアル)

>>:  低バージョンの Druid 接続プール + MySQL ドライバー 8.0 により、スレッドがブロックされ、パフォーマンスが制限される

推薦する

ネイティブ js が携帯電話のプルダウン更新を模倣

この記事では、携帯電話のプルダウンリフレッシュを模倣したjsの具体的なコードを参考までに共有します。...

CentOS 8 に Docker をインストールする詳細なチュートリアル

1. 以前のバージョン yum 削除 docker docker-client docker-cli...

問題におけるJS演算子の調査

問題は、誰もが「メモリ リーク」について知っていることです。一般的なシナリオはいくつかあります。クロ...

Nginx http を https にアップグレードする手順を完了する

httpとhttpsの違いは一部のウェブサイトでは、http を開くと、安全ではないというメッセージ...

Linux環境でのDockerインストールチュートリアル

1. 設置環境Dockerは次のCentOSバージョンをサポートしていますCentOS 6.5 (6...

MySQL を暗号化および復号化するいくつかの方法 (要約)

目次前面に書かれた双方向暗号化エンコード/デコードAES_ENCRYPT/AES_DECRYPT D...

FileZilla を使用して FTP サーバーに接続するプロセスの図

最初にサーバー上に FTP サーバーをセットアップし始めたとき、接続できないことがわかったので、Fi...

MySQL 8.0 のメモリ消費の詳細な分析

目次1. innodb_buffer_pool_size 2. innodb_log_buffer_...

MacにMySQLをインストールするときに初期パスワードを忘れた場合の対処方法

パスワードを忘れると困ります。Mac に MySQL をインストールするための初期パスワードを忘れて...

MySQL で日付を保存するためのベスト プラクティス ガイド

目次序文時間型を保存するのに文字列を使用しないでくださいMySQL の日付型日時タイムスタンプTIM...

Python ベースの Linux システムにおける特定のプロセスのパフォーマンス監視の考え方の詳細な説明

インターネット上には Linux サーバーを監視するためのツール、コンポーネント、プログラムが多数あ...

Linux が Sudo 権限昇格の脆弱性を公開、どのユーザーでも root コマンドを実行可能

Linux で最も一般的に使用される重要なユーティリティの 1 つである Sudo は、ほぼすべての...

HTMLで下線を設定するには?HTMLでテキストに下線を付ける方法

HTML で下線を引くには、以前はテキストを <u></u> タグで囲む必要...

標準的なHTMLの書き方は、Dreamweaverによって自動的に生成されるものとは異なります。

コードをコピーコードは次のとおりです。 <!--doctype はドキュメント タイプ htm...

MySQLのinnodb_data_file_pathパラメータを変更する際の注意事項

序文innodb_data_file_path は、innodb テーブルスペース ファイルを指定す...