検索
ホームページバックエンド開発PHPチュートリアルjavascript - 餐饮类 菜单前端数据存储设计问题

如题: 在做餐饮类 在线点菜目前菜单 主要分为四种

  1. 单品 即该商品不包含任何的附加属性 如: 酸 辣等属性
  2. 复杂单品, 即该商品 包含一些属性 如 酸 辣等属性
  3. 自由组合商品, 即一套商品,如果 火锅,毛肚,等等 从中选择几种菜品
  4. 套餐,套餐又分为 固定套餐 即 价格和其中的 商品都是固定的; 不固定套餐 即 价格是固定的,但是需要用户从套餐中自己选择其中的一种或者几种(几选几的问题);

目前数据都存储在 sessionstorage 中, 但是购物车的的数据组织很混乱 导致 修改 和 删除购物车菜品 业务逻辑变的非常复杂.

前端将上述商品加入购物车中,过程当然包含 增加减少删除和修改,应该如何组织前端存储的数据格式方便做以上各种操作呢?

回复内容:

如题: 在做餐饮类 在线点菜目前菜单 主要分为四种

  1. 单品 即该商品不包含任何的附加属性 如: 酸 辣等属性
  2. 复杂单品, 即该商品 包含一些属性 如 酸 辣等属性
  3. 自由组合商品, 即一套商品,如果 火锅,毛肚,等等 从中选择几种菜品
  4. 套餐,套餐又分为 固定套餐 即 价格和其中的 商品都是固定的; 不固定套餐 即 价格是固定的,但是需要用户从套餐中自己选择其中的一种或者几种(几选几的问题);

目前数据都存储在 sessionstorage 中, 但是购物车的的数据组织很混乱 导致 修改 和 删除购物车菜品 业务逻辑变的非常复杂.

前端将上述商品加入购物车中,过程当然包含 增加减少删除和修改,应该如何组织前端存储的数据格式方便做以上各种操作呢?

单品和复杂单品有什么区别,我看饿了么上口味都是单点的,没有复杂单品啊
单品:{'name':a,"taste":b}
自由组合:[{若干个单品}]

大json不行么,反正这个数值也不是频繁变动的,存个大json应该没什么影响吧

声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
PHPでインターフェイスをどのように作成して使用しますか?PHPでインターフェイスをどのように作成して使用しますか?Apr 30, 2025 pm 03:40 PM

この記事では、PHPでインターフェイスを作成、実装、および使用する方法について説明し、コード組織と保守性の利点に焦点を当てています。

crypt()とpassword_hash()の違いは何ですか?crypt()とpassword_hash()の違いは何ですか?Apr 30, 2025 pm 03:39 PM

この記事では、PHPのCrypt()とpassword_hash()の違いについて、パスワードハッシュの違いについて説明し、最新のWebアプリケーションの実装、セキュリティ、および適合性に焦点を当てています。

PHPのクロスサイトスクリプト(XSS)をどのように防ぐことができますか?PHPのクロスサイトスクリプト(XSS)をどのように防ぐことができますか?Apr 30, 2025 pm 03:38 PM

記事では、入力検証、出力エンコード、およびOWASP ESAPIやHTML浄化器などのツールを使用して、PHPのクロスサイトスクリプト(XSS)を防止します。

PHPの自動装置は何ですか?PHPの自動装置は何ですか?Apr 30, 2025 pm 03:37 PM

PHPでのオートローディングは、必要に応じてクラスファイルを自動的にロードし、メモリの使用を削減し、コード組織を強化することでパフォーマンスを向上させます。ベストプラクティスには、PSR-4の使用とコードを効果的に整理することが含まれます。

PHPストリームとは何ですか?PHPストリームとは何ですか?Apr 30, 2025 pm 03:36 PM

PHPストリームは、一貫したAPIを介したファイル、ネットワークソケット、圧縮形式などのリソースの処理を統合し、複雑さを抽象化し、コードの柔軟性と効率を高めます。

PHPを使用してアップロードできるファイルの最大サイズはどれくらいですか?PHPを使用してアップロードできるファイルの最大サイズはどれくらいですか?Apr 30, 2025 pm 03:35 PM

この記事では、PHPでファイルアップロードサイズの管理を管理し、2MBのデフォルト制限とPHP.ini設定を変更してそれを増やす方法に焦点を当てています。

PHPのめまいの種類とは何ですか?PHPのめまいの種類とは何ですか?Apr 30, 2025 pm 03:34 PM

この記事では、PHP 7.1で導入されたPHPのヌル可能なタイプについて説明し、変数またはパラメーターが指定されたタイプまたはnullのいずれかを可能にします。読みやすさの改善、タイプの安全性、明示的な意図などの利点を強調し、宣言する方法を説明します

unset()とlink()関数の違いは何ですか?unset()とlink()関数の違いは何ですか?Apr 30, 2025 pm 03:33 PM

この記事では、プログラミングのunset()とlink()関数の違いについて説明し、目的とユースケースに焦点を当てています。 unset()はメモリから変数を削除しますが、link()はファイルシステムからファイルを削除します。どちらもEFFECにとって重要です

See all articles

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

Video Face Swap

Video Face Swap

完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

ホットツール

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強力な PHP 統合開発環境

mPDF

mPDF

mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

EditPlus 中国語クラック版

EditPlus 中国語クラック版

サイズが小さく、構文の強調表示、コード プロンプト機能はサポートされていません