Vueはシンプルなショッピングカートの例を実装します

Vueはシンプルなショッピングカートの例を実装します

この記事では、参考までに、Vue の具体的なコードを共有して、簡単なショッピングカートを実装します。具体的な内容は次のとおりです。

HTML ホームページ

<!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>
  <link rel="スタイルシート" href="/css/index.css" >
  
</head>
<本文>
  <div id="アプリ">
   <div v-if="本.length != 0">
    <テーブル>
      <頭>
        <tr>
          <番目></番目>
          <th>書籍名</th>
          <th>予定通り公開</th>
          <th>価格</th>
          <th>購入数量</th>
          <th>オペレーション</th>
        </tr>
      </thead>
      <t本文>
        <tr v-for="(item,index) 書籍内">
          <td>{{item.id}}</td>
          <td>{{アイテム名}}</td>
          <td>{{item.date}}</td>
          <td>{{item.price | 表示価格}}</td>
          <td>
            <button @click="decrement(index)" :disabled="item.count <= 1">-</button>
            {{item.count}}
            <button @click="increment(index)">+</button>
          </td>
          <td><button @click="removeHandle(index)">削除</button></td>
        
        </tr>
      </tbody>
    </テーブル>
    <h2>合計金額: {{totalPrice | showPrice}}</h2>
   </div>
   <h2 v-else>ショッピングカートは空です</h2>
  </div>
 
  <script src="/js/vue.js"></script>
  <script src="/js/index.js"></script>
</本文>
</html>

CSSコード

* {
  マージン: 0;
  パディング: 0;
}
テーブル {
  マージン: 100px 0 0 100px;
  境界線: 1px 実線 #e9e9e9;
  境界線の折りたたみ: 折りたたみ;
  境界線の間隔: 0;
}
 
番目、
td {
  パディング: 8px 16px;
  境界線: 1px 実線 #e9e9e9;
  テキスト配置: 左;
}
 
番目 {
  背景色: #f7f7f7;
  色: 黒;
  フォントの太さ: 6000 ;
}
 
h2 {
  幅: 500ピクセル;
  左マージン: 100px;
}
 
ボタン {
  パディング: 5px;
}

js コード (Vue)

constアプリ = 新しいVue({
  el:"#アプリ",
  データ:{
    書籍:
      {
        id:1,
        名前:「アルゴリズム入門」
        日付:'2019-2'、
        価格:85.00、
        カウント:1
      },
      {
        id:2,
        名前:「コンピュータの基礎」
        日付:'2019-2'、
        価格:95.00、
        カウント:1
      },
      {
        id:3,
        名前:'C++ 上級言語'、
        日付:'2019-2'、
        価格:89.00、
        カウント:1
      },
      {
        id:4,
        名前:'《コンパイル原則》',
        日付:'2019-2'、
        価格:77.00、
        カウント:1
      },
    ]
   
  },
  方法:{
    減算(インデックス){
      this.books[index].count--
    },
    増分(インデックス){
      this.books[インデックス].count++
    },
    ハンドルを削除します(インデックス){
      this.books.splice(インデックス,1)
    }
  },
 
  計算:{
    合計価格(){
      最終価格を 0 にする
      for(let i = 0; i < this.books.length; i++){
        最終価格 += this.books[i].price * this.books[i].count
      }
      最終価格を返す
    }
  },
 
  フィルター:
    価格を表示(価格){
      '¥' + price.toFixed(2) を返す
    }
  }
})

運用結果

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

以下もご興味があるかもしれません:
  • Vuejsは、完全なショッピングカートのサンプルコードを書く方法を段階的に教えてくれます
  • Vuejs ベースのショッピングカート機能の実装
  • Vueはショッピングカート機能を実装します
  • Vueはショッピングカートの小さなケースを実装します
  • Vueはショッピングモールのショッピングカート機能を実現
  • vuex で実装されたシンプルなショッピングカート機能の例
  • Vue を使用してショッピングカートの放物線ボールアニメーション効果を実現する方法の詳細な説明
  • Vueでショッピングカートの詳細ページを実装する方法
  • Vuejsはショッピングカート機能を実装します

<<:  ハイパーリンクに関するいくつかの質問

>>:  HTML テーブルタグチュートリアル (33): セルの垂直配置属性 VALIGN

推薦する

Mysql 8.0.18 ハッシュ結合テスト (推奨)

ハッシュ結合ハッシュ結合は実行にインデックスを必要とせず、ほとんどの場合、現在のブロックネストループ...

MySQL でデータをクエリし、条件に基づいて別のテーブルに更新する方法の例

この記事では、MySQL が条件に基づいてデータをクエリし、別のテーブルに更新する方法を例を使用して...

Linux でタイムアウト付きの接続関数を試す

前回の記事では、Windows でタイムアウトを試してみました。この記事では、Linux で試してみ...

リフレッシュリダイレクトを実現する HTML ヘッドタグメタ

コードをコピーコードは次のとおりです。 <html> <ヘッド> <m...

HTML と CSS を使用して絵文字付きのコメント ボックスを作成する方法のチュートリアル

絵文字付きの HTML コメント ボックス。絵文字は Json データを通じて読み込まれ、好みに応じ...

vue2 vue3 での Echarts の詳細な使用方法

目次1. インストール2. vue2でEchartsを使用するmain.jsファイル内コンテナが与え...

Linux で pyenv をインストールする方法

前提条件gitをインストールする必要があるインストール手順1. リモートリポジトリからpyenvをク...

Windows 10にOdoo12開発環境をインストールする方法

序文多くの友人は Mac コンピューターを持っていないと言っていますが、Windows 開発は実際に...

一般的なブラウザ互換性の問題(概要)

ブラウザの互換性とは、スタイルの互換性 (CSS)、インタラクションの互換性 (JavaScript...

Vueの子コンポーネントと親コンポーネントの詳細な分析

目次1. 親コンポーネントと子コンポーネント2. テンプレート分離書き込み1. テンプレートタグ2....

MySQL 5.7.29 + Win64 解凍バージョンのインストールチュートリアル(画像とテキスト付き)

公式サイトをダウンロード自分に合ったバージョンを選択してダウンロードしてください。 ダウンロードをク...

バックエンド サーバー プロキシとして Nginx を推奨する理由 (理由分析)

1. はじめに実際のサーバーはパブリックインターネットに直接公開されるべきではありません。そうしな...

1 つの記事で Nginx の現在の制限を理解する (簡単な実装)

Nginx は現在、最も人気のあるロード バランサーの 1 つです。インターネット トラフィックの...

Centos7.5 は mysql5.7.24 バイナリ パッケージの展開をインストールします

1. 環境整備:オペレーティング システム: CentOS Linux リリース 7.5.1804 ...