FlutterFlowでEコマースアプリの作り方を解説
![](https://flutterflow-cafe.com/wp-content/uploads/2024/04/ffcogp-1-1.jpg)
はじめに
今回は、ECサイトをFlutterFlowで作成する方法を解説していきます。FlutterFlowでは、ECサイトのテーマも豊富に用意されているので、ぜひ初心者の方もこの記事を参考にECアプリを作成してみてください。
前提
この記事では、Firebaseとの接続が完了している全体で解説しています。まだの方はこちらの記事を参考に接続を完了させてください。
コレクションの作成
今回は、userコレクションと、商品を管理するコレクションの2つのコレクションを作成していきます。
userコレクション
まずは、「users」のデータベースを作成していきます。
サイドバーの「Firestore」をクリックし、「+」をクリック。「users」と入力し、「create」→「Yes」をクリック。この状態で最低限のフィールドが自動的に作成されます。
商品コレクション
次に商品を管理するコレクションを作成していきます。
画面左上の「+」をクリック。「Products」と入力し「create」をクリックします。 次に「Start from scratch」をクリックし、
Field Nameを「name」、Data Typeを「String」を選択しチャックをクリックします。 Field Nameを「price」、Data Typeを 「Double」を選択します。 Field Nameを「imagePath」、Data Typeを 「Image Path」を選択します。
![](http://flutterflow-cafe.com/wp-content/uploads/2024/04/1-1.gif)
App State
今回はカートと、合計金額を扱う変数を設定します。
Sidebarから「App Values」をクリックし、 「Add App State Variable」と進み Field Nameを「cart」、Data Typeを「String」、Persistedをオンにします。 Field Nameを「totalAmount」、Data Typeを「Double」、Persistedをオンにします。
![](http://flutterflow-cafe.com/wp-content/uploads/2024/04/2-1023x644.gif)
一覧ページの作成
まずは商品の一覧ページを作成していきます。
Sidebarから「Widget Tree」をクリックし、「Add new page」と進み、「Product List」のテーマを選択します。
![](https://flutterflow-cafe.com/wp-content/uploads/2024/04/3-1024x576.jpg)
ListViewを選択し、Properties Panelから、「Backend Query」を選択します。 「Add Query」→Query Typeを「Query Collection」→Collectionを「Products」とします。
![](http://flutterflow-cafe.com/wp-content/uploads/2024/04/4-1023x644.gif)
「Title」のtextを選択した状態で、textの横のアイコンをクリックし、「Products Document」の「name」とします。
「$11.00」のtextを選択した状態で、textの横のアイコンをクリックし、「Products Document」の「Price」とします。
「images」を選択した状態で、Pathの横のアイコンをクリックし、「Products Document」の「imagePath」を選択します。
「subtext」は、今回は使用しないので削除します。
Icon→Choose Iconで「add_shopping_cart」と入力し、一番はじめの紙飛行機のアイコンに変更します。
カートに追加
今変更したアイコンを選択し、update App Stateをアクションに追加します。
Select Update Typeを「Add to List」を選択し、
Value to addを「Products Document」のReferenceとします。
さらに、「+Add Field」から、
Select Update Typeを「increment/Decrement」を選択し、
Increment Valueを「Products Document」のPriceとします。
![](http://flutterflow-cafe.com/wp-content/uploads/2024/04/5-1023x644.gif)
これで、アイコンをクリックすると、カートに商品のReferenceと、金額が追加されます。
カートページの作成
次にカートページを作成していきます。
Sidebarから「Widget Tree」をクリックし、「Add new page」と進み、「E-commerce」の「Checkout4」を追加します。
![](https://flutterflow-cafe.com/wp-content/uploads/2024/04/6-1024x576.jpg)
ListViewを選択し、Properties Panelから、「Generate Dynamic Children」を選択します。
Variable Nameを「cart」、ValueをApp Stateの「Cart」とします。
![](http://flutterflow-cafe.com/wp-content/uploads/2024/04/7-1023x644.gif)
ListViewの子要素であるmenuItemを選択し、「Add Query」→Query Typeを「Document from Reference」→Collectionを「Products」とし、 「cart item」に設定します。
![](http://flutterflow-cafe.com/wp-content/uploads/2024/04/8-1023x644.gif)
「Air Max」のtextを選択した状態で、textの横のアイコンをクリックし、「item Document」の「name」とします。
「$124.00」のtextを選択した状態で、textの横のアイコンをクリックし、「item Document」の「Price」とします。
「images」を選択した状態で、Pathの横のアイコンをクリックし、「ietm Document」の「images」を選択します。
カートから外すアクション
ゴミ箱アイコンを選択し、update App Stateをアクションに追加します。
Select Update Typeを「Remove from List」を選択し、「cart Item」を選択します。
Value to addを「Products Document」のReferenceとします。
さらに、「+Add Field」から、
Select Update Typeを「Set Value」を選択し、
Value to set をCode Expression→「Add argument」と進みます。
Nameは、「var1」のままにしておき、Typeを「Double」、Valueを「Products Document」のPriceとします。
もう一度「Add argument」をクリックし、 Nameは、「var2」のままにしておき、Typeを「Double」、Valueを「App state」のtotalAmountとします。
Expressionに「var2 – var1」と入力し、「Check」→「Confirm」とします。
![](http://flutterflow-cafe.com/wp-content/uploads/2024/04/9.gif)
金額表示
Order Summaryの項目には、複数の項目がありますが、「Cleaning Fee」は不要なので削除します。
「Base Price」の数字を選択し、Valueを「App state」のtotalAmountとします。
「Taxes」の数字を選択し、Code Expression→「Add argument」と進みます。
Nameは、「var1」のままにしておき、Typeを「Double」、Valueを「App state」のtotalAmountとします。
Expressionに「var1 * 0.1」と入力し、「Check」→「Confirm」とします。
![](https://flutterflow-cafe.com/wp-content/uploads/2024/04/1010.gif)
「Total」の数字$230.20を選択し、Code Expression→「Add argument」と進みます。
Nameは、「var1」のままにしておき、Typeを「Double」、Valueを「App state」のtotalAmountとします。
Expressionに「var1 * 1.1」と入力し、「Check」→「Confirm」とします。
カートへ移動
商品一覧ページへ戻り、右上のカートアイコンにNavigate to「Checkout4」のアクションを追加します。
さいごに
ここまで基本的なEC機能を解説してきました!Stripe決済を追加する場合は、こちらの記事で解説しているので、合わせてご覧ください。FlutterFlowでは、ECアプリのほか、マッチングアプリやチャットアプリなど、高機能なアプリを作成することができます。FlutterFlow Cafeでは、これらの解説記事もありますので、ぜひご活用下さい!
コメント