458 lines
17 KiB
Vue
Raw Permalink Normal View History

2022-09-08 15:06:44 -04:00
<script>
import Layout from "../../layouts/main";
import PageHeader from "../../components/page-header";
import { clothsData } from "./data-products";
/**
* Product detail component
*/
export default {
components: { Layout, PageHeader },
props: {
id: {
type: String,
required: false,
}
},
data() {
return {
productDetail: null,
clothsData: clothsData,
title: "Product Detail",
items: [
{
text: "Ecommerce",
href: "/",
},
{
text: "Product Detail",
active: true,
},
],
};
},
created() {
this.productDetail = clothsData.filter((product) => {
return product.id === parseInt(this.id || "1");
});
},
methods: {
/**
* Selected image shows
*/
imageShow(event) {
const image = event.target.src;
const expandImg = document.getElementById("expandedImg");
expandImg.src = image;
},
},
};
</script>
<template>
<Layout>
<PageHeader :title="title" :items="items" />
<div class="row">
<div class="col-lg-12">
<div class="card">
<div class="card-body">
<div class="row">
<div class="col-xl-6">
<div class="product-detai-imgs">
<b-tabs pills vertical nav-wrapper-class="col-md-2 col-sm-3 col-4">
<b-tab>
<template v-slot:title>
<img
:src="productDetail[0].images[0]"
alt
class="img-fluid mx-auto d-block tab-img rounded"
/>
</template>
<div class="product-img">
<img
:src="productDetail[0].images[0]"
alt
class="img-fluid mx-auto d-block"
/>
</div>
</b-tab>
<b-tab>
<template v-slot:title>
<img
:src="productDetail[0].images[1]"
alt
class="img-fluid mx-auto d-block tab-img rounded"
/>
</template>
<div class="product-img">
<img
:src="productDetail[0].images[1]"
alt
class="img-fluid mx-auto d-block"
/>
</div>
</b-tab>
<b-tab>
<template v-slot:title>
<img
:src="productDetail[0].images[2]"
alt
class="img-fluid mx-auto d-block tab-img rounded"
/>
</template>
<div class="product-img">
<img
:src="productDetail[0].images[2]"
alt
class="img-fluid mx-auto d-block"
/>
</div>
</b-tab>
<b-tab>
<template v-slot:title>
<img
:src="productDetail[0].images[3]"
alt
class="img-fluid mx-auto d-block tab-img rounded"
/>
</template>
<div class="product-img">
<img
:src="productDetail[0].images[3]"
alt
class="img-fluid mx-auto d-block"
/>
</div>
</b-tab>
</b-tabs>
</div>
</div>
<div class="col-xl-6">
<div class="mt-3">
<h4 class="mt-1 mb-3">{{productDetail[0].name}}</h4>
<p class="text-muted float-left me-3">
<span class="bx bx-star text-warning"></span>
<span class="bx bx-star text-warning ml-1"></span>
<span class="bx bx-star text-warning ml-1"></span>
<span class="bx bx-star text-warning ml-1"></span>
<span class="bx bx-star ml-1"></span>
</p>
<p class="text-muted mb-4">( 152 Customers Review )</p>
<h6 class="text-success text-uppercase">{{productDetail[0].discount}} Off</h6>
<h5 class="mb-4">
Price :
<span class="text-muted me-2">
<del>${{productDetail[0].oldprice}} USD</del>
</span>
<b>${{productDetail[0].newprice}} USD</b>
</h5>
<p
class="text-muted mb-4"
>To achieve this, it would be necessary to have uniform grammar pronunciation and more common words If several languages coalesce</p>
<div class="row mb-3">
<div class="col-md-6">
<div v-for="(item, index) in productDetail[0].feature" :key="index">
<p class="text-muted">
<i class="bx bx-unlink font-size-16 align-middle text-primary me-1"></i>
{{item}}
</p>
</div>
</div>
<div class="col-md-6">
<div>
<p class="text-muted">
<i class="bx bx-user-voice font-size-16 align-middle text-primary me-1"></i> Bass
</p>
<p class="text-muted">
<i class="bx bx-cog font-size-16 align-middle text-primary me-1"></i> Warranty : 1 Year
</p>
</div>
</div>
</div>
<div class="product-color">
<h5 class="font-size-15">Color :</h5>
<a
href="javascript: void(0);"
class="active"
v-for="(item, index) in productDetail[0].colorVariant"
:key="index"
>
<div class="product-color-item border rounded">
<img :src="item.value" alt class="avatar-md" />
</div>
<p>{{item.key}}</p>
</a>
</div>
</div>
</div>
</div>
<!-- end row -->
<div class="mt-5">
<h5 class="mb-3">Specifications :</h5>
<div class="table-responsive">
<table class="table mb-0 table-bordered">
<tbody>
<tr v-for="(i, index) in productDetail[0].specification" :key="index">
<th scope="row" style="width: 400px;">{{i.key}}</th>
<td>{{i.value}}</td>
</tr>
</tbody>
</table>
</div>
</div>
<!-- end Specifications -->
<div class="mt-5">
<h5 class="mb-4">Reviews :</h5>
<div class="media py-3 border-bottom">
<img
src="/images/users/avatar-2.jpg"
class="avatar-xs me-3 rounded-circle"
alt="img"
/>
<div class="media-body">
<h5 class="mt-0 font-size-15">Brian</h5>
<p
class="text-muted"
>If several languages coalesce, the grammar of the resulting language.</p>
<ul class="list-inline float-sm-end">
<li class="list-inline-item">
<a href="javascript: void(0);">
<i class="far fa-thumbs-up me-1"></i> Like
</a>
</li>
<li class="list-inline-item">
<a href="javascript: void(0);">
<i class="far fa-comment-dots me-1"></i> Comment
</a>
</li>
</ul>
<div class="text-muted">
<i class="far fa-calendar-alt text-primary me-1"></i> 5 hrs ago
</div>
</div>
</div>
<div class="media py-3 border-bottom">
<img
src="/images/users/avatar-4.jpg"
class="avatar-xs me-3 rounded-circle"
alt="img"
/>
<div class="media-body">
<h5 class="mt-0 font-size-15">Denver</h5>
<p
class="text-muted"
>To an English person, it will seem like simplified English, as a skeptical Cambridge</p>
<ul class="list-inline float-sm-end">
<li class="list-inline-item">
<a href="javascript: void(0);">
<i class="far fa-thumbs-up me-1"></i> Like
</a>
</li>
<li class="list-inline-item">
<a href="javascript: void(0);">
<i class="far fa-comment-dots me-1"></i> Comment
</a>
</li>
</ul>
<div class="text-muted">
<i class="far fa-calendar-alt text-primary me-1"></i> 07 Oct, 2019
</div>
<div class="media mt-4">
<img
src="/images/users/avatar-5.jpg"
class="avatar-xs me-3 rounded-circle"
alt="img"
/>
<div class="media-body">
<h5 class="mt-0 font-size-15">Henry</h5>
<p
class="text-muted"
>Their separate existence is a myth. For science, music, sport, etc.</p>
<ul class="list-inline float-sm-end">
<li class="list-inline-item">
<a href="javascript: void(0);">
<i class="far fa-thumbs-up me-1"></i> Like
</a>
</li>
<li class="list-inline-item">
<a href="javascript: void(0);">
<i class="far fa-comment-dots me-1"></i> Comment
</a>
</li>
</ul>
<div class="text-muted">
<i class="far fa-calendar-alt text-primary me-1"></i> 08 Oct, 2019
</div>
</div>
</div>
</div>
</div>
<div class="media mt-3 border-bottom">
<div class="avatar-xs me-3">
<span
class="avatar-title bg-soft bg-primary text-primary rounded-circle font-size-16"
>N</span>
</div>
<div class="media-body">
<h5 class="mt-0 font-size-15">Neal</h5>
<p
class="text-muted"
>Everyone realizes why a new common language would be desirable.</p>
<ul class="list-inline float-sm-end">
<li class="list-inline-item">
<a href="javascript: void(0);">
<i class="far fa-thumbs-up me-1"></i> Like
</a>
</li>
<li class="list-inline-item">
<a href="javascript: void(0);">
<i class="far fa-comment-dots me-1"></i> Comment
</a>
</li>
</ul>
<div class="text-muted">
<i class="far fa-calendar-alt text-primary me-1"></i> 05 Oct, 2019
</div>
</div>
</div>
</div>
</div>
</div>
<!-- end card -->
</div>
</div>
<!-- end row -->
<div class="row mt-3">
<div class="col-lg-12">
<div>
<h5 class="mb-3">Recent product :</h5>
<div class="row">
<div class="col-xl-4 col-sm-6">
<div class="card">
<div class="card-body">
<div class="row align-items-center">
<div class="col-md-4">
<img
src="/images/product/img-7.png"
alt
class="img-fluid mx-auto d-block"
/>
</div>
<div class="col-md-8">
<div class="text-center text-md-left">
<h5 class="mb-3 text-truncate">
<a href="javascript: void(0);" class="text-dark">Wirless Headphone</a>
</h5>
<p class="text-muted">
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star"></i>
</p>
<h5 class="my-0">
<span class="text-muted me-2">
<del>$240</del>
</span>
<b>$225</b>
</h5>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-xl-4 col-sm-6">
<div class="card">
<div class="card-body">
<div class="row align-items-center">
<div class="col-md-4">
<img
src="/images/product/img-4.png"
alt
class="img-fluid mx-auto d-block"
/>
</div>
<div class="col-md-8">
<div class="text-center text-md-left">
<h5 class="mb-3 text-truncate">
<a href="javascript: void(0);" class="text-dark">Phone patterned cases</a>
</h5>
<p class="text-muted">
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star"></i>
</p>
<h5 class="my-0">
<span class="text-muted me-2">
<del>$150</del>
</span>
<b>$145</b>
</h5>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="col-xl-4 col-sm-6">
<div class="card">
<div class="card-body">
<div class="row align-items-center">
<div class="col-md-4">
<img
src="/images/product/img-6.png"
alt
class="img-fluid mx-auto d-block"
/>
</div>
<div class="col-md-8">
<div class="text-center text-md-left">
<h5 class="mb-3 text-truncate">
<a
href="javascript: void(0);"
class="text-dark"
>Phone Dark Patterned cases</a>
</h5>
<p class="text-muted">
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star text-warning"></i>
<i class="bx bx-star"></i>
</p>
<h5 class="my-0">
<span class="text-muted me-2">
<del>$138</del>
</span>
<b>$135</b>
</h5>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- end row -->
</div>
</div>
</div>
<!-- end row -->
</Layout>
</template>