1717 <template slot-scope="scope">
1818 <div
1919 class =" pic"
20- :style =" {'background-image': `url(${scope.data.id })`}"
20+ :style =" {'background-image': `url(${scope.data.image })`}"
2121 />
2222 </template >
2323 <img
4040 <div class =" swipe-button" >
4141 <img
4242 src =" ~/assets/images/nope.png"
43- @click =" decide('nope')"
43+ @click =" decide('nope'); cantEat(); "
4444 >
4545 <span >食べれない</span >
4646 </div >
4747 <div class =" swipe-button" >
4848 <img
4949 src =" ~/assets/images/super-like.png"
50- @click =" decide('super')"
50+ @click =" decide('super'); canEat(); "
5151 >
5252 <span >好きなもの</span >
5353 </div >
5454 <div class =" swipe-button" >
5555 <img
5656 src =" ~/assets/images/like.png"
57- @click =" decide('like')"
57+ @click =" decide('like'); canEat(); "
5858 >
5959 <span >食べれる</span >
6060 </div >
@@ -72,42 +72,53 @@ export default {
7272 },
7373 data : () => ({
7474 alcoholicBeverage: {},
75+ nibbles: [],
7576 queue: [],
7677 offset: 0 ,
7778 }),
7879 created () {
7980 this .getAlcoholicBeverage ();
80- this .mock ();
81+ this .fetchNibbles ();
8182 },
8283 methods: {
8384 getAlcoholicBeverage () {
8485 this .alcoholicBeverage = this .$route .params .alcoholicBeverage ;
8586 },
87+ async fetchNibbles () {
88+ await this .$axios .get (" /nibbles" ).then (res => {
89+ this .nibbles = res .data ;
90+ this .mock ();
91+ });
92+ },
8693 mock () {
8794 const list = [];
88- // APIを叩く
89- // 現在バックエンドは実装中なのでダミーデータ
90- const nibbles = this .fetchNibbles ();
95+ const nibbles = this .nibbles ;
9196 for (let i = 0 ; i < nibbles .length + 1 ; i++ ) {
9297 list .push ({
9398 id:
9499 typeof nibbles[this .offset ] === " undefined"
95100 ? undefined
96- : nibbles[this .offset ].image ,
101+ : nibbles[this .offset ].id ,
97102 name:
98103 typeof nibbles[this .offset ] === " undefined"
99104 ? undefined
100105 : nibbles[this .offset ].name ,
106+ image:
107+ typeof nibbles[this .offset ] === " undefined"
108+ ? undefined
109+ : nibbles[this .offset ].image ,
101110 });
102111 this .offset ++ ;
103112 }
104113 this .queue = this .queue .concat (list);
105114 },
106115 onSubmit ({ item }) {
107- // ここにスワイプ情報を保存する処理を書く
116+ this . saveSwipe (item, " 食べれるか食べられへんかみたいなステータス取って渡したいけどやり方が分からん " );
108117 if (this .canMoveResult ()) {
109118 // スワイプ情報も遷移先に渡すようにする
110- this .$router .push (" /results" );
119+ this .$router .push ({ name: " results" , params: {
120+ swipes: " スワイプ情報がここに入ります"
121+ } });
111122 }
112123 if (this .queue .length < 3 ) {
113124 this .mock ();
@@ -116,29 +127,14 @@ export default {
116127 decide (choice ) {
117128 this .$refs .tinder .decide (choice);
118129 },
119- fetchNibbles () {
120- return [
121- {
122- name: " 枝豆" ,
123- image:
124- " https://cn.bing.com//th?id=OHR.AdelieBreeding_ZH-CN1750945258_UHD.jpg&pid=hp&w=720&h=1280&rs=1&c=4&r=0" ,
125- },
126- {
127- name: " チーズ" ,
128- image:
129- " https://cn.bing.com//th?id=OHR.BarcolanaTrieste_ZH-CN5745744257_UHD.jpg&pid=hp&w=720&h=1280&rs=1&c=4&r=0" ,
130- },
131- {
132- name: " ポテチ" ,
133- image:
134- " https://cn.bing.com//th?id=OHR.RedRocksArches_ZH-CN5664546697_UHD.jpg&pid=hp&w=720&h=1280&rs=1&c=4&r=0" ,
135- },
136- {
137- name: " 餃子" ,
138- image:
139- " https://cn.bing.com//th?id=OHR.LofotenSurfing_ZH-CN5901239545_UHD.jpg&pid=hp&w=720&h=1280&rs=1&c=4&r=0" ,
140- },
141- ];
130+ canEat () {
131+ this .saveSwipe (item, " 食べれるか食べられへんかみたいなステータス取って渡したいけどやり方が分からん" );
132+ },
133+ cantEat () {
134+ this .saveSwipe (item, " 食べれるか食べられへんかみたいなステータス取って渡したいけどやり方が分からん" );
135+ },
136+ saveSwipe (item , status ) {
137+ // ゴニョる
142138 },
143139 canMoveResult () {
144140 return this .queue
0 commit comments