forked from vuejsdevelopers/vuejs-poster-shop
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.html
85 lines (80 loc) · 3.28 KB
/
index.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="referrer" content="never" />
<title>Vue.js Poster Shop</title>
<link rel="icon" href="public/favicon.ico" type="image/x-icon">
<!-- Fonts -->
<link href="https://fonts.googleapis.com/css?family=Luckiest+Guy" rel="stylesheet">
<link href="https://fonts.googleapis.com/css?family=Lato|Montserrat" rel="stylesheet">
<!-- CSS -->
<link rel="stylesheet" type="text/css" href="public/style.css">
</head>
<body>
<div id="app" v-cloak>
<div class="header">
<h1>Vue.js Poster Store</h1>
<form class="searchbar" @submit.prevent="onSubmit">
<input type="text" placeholder="Search for posters" v-model="newSearchTerm" />
<input type="submit" value="search" class="btn" />
</form>
</div>
<div class="main">
<div class="products">
<div class="search-results" v-if="!loading">
Found {{ results.length }} results for search term {{ lastSearchTerm }}.
</div>
<div v-else>
Loading...
</div>
<div class="product" v-for="(item, index) in items" v-bind:key="item.id">
<div>
<div class="product-image">
<img v-bind:src="item.link" alt="Poster" v-bind:title="item.title">
</div>
</div>
<div>
<h4 class="product-title">
{{ item.title }}
</h4>
<p>
Price: <strong>{{ item.price | currency }}</strong>
</p>
<button @click="addToCart(index)" class="btn add-to-cart">Add to cart</button>
</div>
</div>
<div id="product-list-bottom">
<div v-if="noMoreItems">No more items.</div>
</div>
</div>
<div class="cart">
<h2>Shopping Cart</h2>
<transition-group name="fade" tag="ul">
<li v-for="item in cart" class="cart-item" v-bind:key="item.id">
<div class="item-title">{{ item.title }}</div>
Quantity: <span class="item-qty">{{ item.qty }}</span>
Total: <span class="item-qty">{{ item.qty * item.price | currency }}</span>
<button class="btn" @click="increment(item)">+</button>
<button class="btn" @click="decrement(item)" :disabled="item.qty <= 0">-</button>
</li>
</transition-group>
<transition name="fade">
<div v-if="cart.length > 0">
<div>Total: {{ total | currency }}</div>
</div>
</transition>
<div v-if="cart.length === 0" class="empty-cart">
<div>No items in the cart.</div>
</div>
</div>
</div>
</div>
<!-- Scripts -->
<script src="/reload/reload.js"></script>
<script src="node_modules/vue/dist/vue.js"></script>
<script src="node_modules/axios/dist/axios.js"></script>
<script src="node_modules/scrollmonitor/scrollMonitor.js"></script>
<script type="text/javascript" src="public/script.js"></script>
</body>
</html>