Commit c29a89cb8072942106755840e94d482e6329e1d9
1 parent
5fb875b5
up
Showing
10 changed files
with
33 additions
and
36 deletions
public/home/10 Material testing.svg
1 | <?xml version="1.0" standalone="no"?> | 1 | <?xml version="1.0" standalone="no"?> |
2 | <!DOCTYPE svg PUBLIC "-//W3C//DTDSVG1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | 2 | <!DOCTYPE svg PUBLIC "-//W3C//DTDSVG1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> |
3 | -<svg t="1687246905469" class="icon" viewBox="-350 100 1900 1000" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5024" xmlns:xlink="http://www.w3.org/1999/xlink" width="190" height="230"> | 3 | +<svg t="1687246905469" class="icon" viewBox="-350 0 1900 1000" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="5024" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"> |
4 | <path d="M573.286004 173.620761l-1.474964 300.192671-242.744074-143.371499V100.322551h-49.998779v233.644296l-277.343229 157.496154L0 844.479383l303.94258 179.520617 305.892531-173.695759 1.474964-300.192671 242.744074 143.396499v231.794341h49.998779v-235.319255l277.343229-157.496155 1.724958-353.041381L879.178536-0.074998z m-13.299676 647.484192l-255.518761 144.996461-254.318791-150.221333 1.424965-295.31779 255.518762-144.99646 254.318791 150.246332z m571.561046-317.692243l-255.518761 144.99646-254.318791-150.246332 1.424965-295.367789 255.518761-144.99646L1132.97234 208.044921z" p-id="5025" fill="#1296db"></path> | 4 | <path d="M573.286004 173.620761l-1.474964 300.192671-242.744074-143.371499V100.322551h-49.998779v233.644296l-277.343229 157.496154L0 844.479383l303.94258 179.520617 305.892531-173.695759 1.474964-300.192671 242.744074 143.396499v231.794341h49.998779v-235.319255l277.343229-157.496155 1.724958-353.041381L879.178536-0.074998z m-13.299676 647.484192l-255.518761 144.996461-254.318791-150.221333 1.424965-295.31779 255.518762-144.99646 254.318791 150.246332z m571.561046-317.692243l-255.518761 144.99646-254.318791-150.246332 1.424965-295.367789 255.518761-144.99646L1132.97234 208.044921z" p-id="5025" fill="#1296db"></path> |
5 | <path d="M479.063304 575.310954h49.998779v199.995118h-49.998779z" p-id="5026" fill="#1296db"></path> | 5 | <path d="M479.063304 575.310954h49.998779v199.995118h-49.998779z" p-id="5026" fill="#1296db"></path> |
6 | <path d="M109.37233 538.936842l167.845902-95.597666 24.749396 43.44894-167.845902 95.622665z" p-id="5027" fill="#1296db"></path> | 6 | <path d="M109.37233 538.936842l167.845902-95.597666 24.749396 43.44894-167.845902 95.622665z" p-id="5027" fill="#1296db"></path> |
public/home/11 Calibration.svg
1 | <?xml version="1.0" standalone="no"?> | 1 | <?xml version="1.0" standalone="no"?> |
2 | <!DOCTYPE svg PUBLIC "-//W3C//DTDSVG1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | 2 | <!DOCTYPE svg PUBLIC "-//W3C//DTDSVG1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> |
3 | -<svg t="1687246980615" class="icon" viewBox="-700 -500 2200 1700" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6119" xmlns:xlink="http://www.w3.org/1999/xlink" width="220" height="190"> | 3 | +<svg t="1687246980615" class="icon" viewBox="-700 -350 2200 1700" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="6119" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"> |
4 | <path d="M801.274 157.172c0-21.7-17.937-39.291-40.065-39.291L661.052 117.881l0 39.291c0 21.702-17.937 39.294-40.065 39.294L280.446 196.466c-22.125 0-40.062-17.591-40.062-39.294l0-39.291L120.192 117.881c-22.125 0-40.065 17.591-40.065 39.291l0 746.571c0 21.702 17.939 39.296 40.065 39.296L440.7 943.039l80.129 78.585L80.128 1021.624C35.874 1021.623 0 986.441 0 943.039L0 117.881c0-43.402 35.874-78.59 80.128-78.59l160.256 0c0-21.7 17.937-39.291 40.062-39.291l340.541 0c22.128 0 40.065 17.591 40.065 39.291l140.223 0c44.253 0 80.127 35.188 80.127 78.59l0 360.582-80.127 81.611L801.275 157.172zM620.987 432.227 260.415 432.227c-11.065 0-20.031-8.798-20.031-19.649l0-19.644c0-10.854 8.966-19.647 20.031-19.647l360.572 0c11.063 0 20.034 8.793 20.034 19.647l0 19.644C641.021 423.429 632.05 432.227 620.987 432.227zM641.021 628.692c0 10.849-8.971 19.644-20.034 19.644L260.415 648.336c-11.065 0-20.031-8.796-20.031-19.644l0-19.649c0-10.849 8.966-19.644 20.031-19.644l360.572 0c11.063 0 20.034 8.796 20.034 19.644L641.021 628.692zM466.413 750.879 614.66 877.587l406.964-406.069-401.418 550.105L413.515 802.704 466.413 750.879z" fill="#1296db" p-id="6120"></path> | 4 | <path d="M801.274 157.172c0-21.7-17.937-39.291-40.065-39.291L661.052 117.881l0 39.291c0 21.702-17.937 39.294-40.065 39.294L280.446 196.466c-22.125 0-40.062-17.591-40.062-39.294l0-39.291L120.192 117.881c-22.125 0-40.065 17.591-40.065 39.291l0 746.571c0 21.702 17.939 39.296 40.065 39.296L440.7 943.039l80.129 78.585L80.128 1021.624C35.874 1021.623 0 986.441 0 943.039L0 117.881c0-43.402 35.874-78.59 80.128-78.59l160.256 0c0-21.7 17.937-39.291 40.062-39.291l340.541 0c22.128 0 40.065 17.591 40.065 39.291l140.223 0c44.253 0 80.127 35.188 80.127 78.59l0 360.582-80.127 81.611L801.275 157.172zM620.987 432.227 260.415 432.227c-11.065 0-20.031-8.798-20.031-19.649l0-19.644c0-10.854 8.966-19.647 20.031-19.647l360.572 0c11.063 0 20.034 8.793 20.034 19.647l0 19.644C641.021 423.429 632.05 432.227 620.987 432.227zM641.021 628.692c0 10.849-8.971 19.644-20.034 19.644L260.415 648.336c-11.065 0-20.031-8.796-20.031-19.644l0-19.649c0-10.849 8.966-19.644 20.031-19.644l360.572 0c11.063 0 20.034 8.796 20.034 19.644L641.021 628.692zM466.413 750.879 614.66 877.587l406.964-406.069-401.418 550.105L413.515 802.704 466.413 750.879z" fill="#1296db" p-id="6120"></path> |
5 | </svg> | 5 | </svg> |
public/home/8_Electrochemical_performance.svg
1 | <?xml version="1.0" standalone="no"?> | 1 | <?xml version="1.0" standalone="no"?> |
2 | <!DOCTYPE svg PUBLIC "-//W3C//DTDSVG1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> | 2 | <!DOCTYPE svg PUBLIC "-//W3C//DTDSVG1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd"> |
3 | -<svg t="1687246678802" class="icon" viewBox="-300 -250 1624 1200" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1499" xmlns:xlink="http://www.w3.org/1999/xlink" width="300" height="250"> | 3 | +<svg t="1687246678802" class="icon" viewBox="-300 -150 1624 1200" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1499" xmlns:xlink="http://www.w3.org/1999/xlink" width="200" height="200"> |
4 | <path d="M805.888 170.496c-74.752 0-132.608 60.928-132.608 132.608 0 48.64 26.624 93.184 69.12 116.224l-124.416 193.536L499.712 532.48l-88.576 132.608-148.992-102.4-176.64 245.76v63.488h27.648l162.816-229.376 143.36 102.4 93.696-132.608 121.344 79.872 168.448-259.584h2.56c74.752 0 132.608-60.928 132.608-132.608S880.64 170.496 805.888 170.496z" fill="#1296db" p-id="1500"></path> | 4 | <path d="M805.888 170.496c-74.752 0-132.608 60.928-132.608 132.608 0 48.64 26.624 93.184 69.12 116.224l-124.416 193.536L499.712 532.48l-88.576 132.608-148.992-102.4-176.64 245.76v63.488h27.648l162.816-229.376 143.36 102.4 93.696-132.608 121.344 79.872 168.448-259.584h2.56c74.752 0 132.608-60.928 132.608-132.608S880.64 170.496 805.888 170.496z" fill="#1296db" p-id="1500"></path> |
5 | </svg> | 5 | </svg> |
src/assets/main.css
src/components/Footer.vue
@@ -2,22 +2,22 @@ | @@ -2,22 +2,22 @@ | ||
2 | <div class="bg-grey-darken-3 tw-flex tw-pt-[32px] tw-pb-[32px]"> | 2 | <div class="bg-grey-darken-3 tw-flex tw-pt-[32px] tw-pb-[32px]"> |
3 | <v-container> | 3 | <v-container> |
4 | <v-row> | 4 | <v-row> |
5 | - <v-col cols="3"> | 5 | + <v-col cols="12" lg="3" sm="12" md="6"> |
6 | <b>Solution</b> | 6 | <b>Solution</b> |
7 | <p><router-link to="/equipment">Lab Device</router-link></p> | 7 | <p><router-link to="/equipment">Lab Device</router-link></p> |
8 | <p><router-link to="/customize">Customized BatterTesting</router-link></p> | 8 | <p><router-link to="/customize">Customized BatterTesting</router-link></p> |
9 | <p><router-link to="/pack">Pack</router-link></p> | 9 | <p><router-link to="/pack">Pack</router-link></p> |
10 | </v-col> | 10 | </v-col> |
11 | - <v-col cols="3"> | 11 | + <v-col cols="12" lg="3" sm="12" md="6"> |
12 | <b>Online Product</b> | 12 | <b>Online Product</b> |
13 | <p><router-link to="/products">Material Reagents</router-link></p> | 13 | <p><router-link to="/products">Material Reagents</router-link></p> |
14 | <p><router-link to="/products">Lab Device Products</router-link></p> | 14 | <p><router-link to="/products">Lab Device Products</router-link></p> |
15 | </v-col> | 15 | </v-col> |
16 | - <v-col cols="2"> | 16 | + <v-col cols="12" lg="3" sm="12" md="6"> |
17 | <b>About</b> | 17 | <b>About</b> |
18 | <p><router-link to="/about">About us</router-link></p> | 18 | <p><router-link to="/about">About us</router-link></p> |
19 | </v-col> | 19 | </v-col> |
20 | - <v-col cols="4"> | 20 | + <v-col cols="12" lg="3" sm="12" md="6"> |
21 | <div class="tw-w-[250px] tw-float-left tw-mr-[8px]"> | 21 | <div class="tw-w-[250px] tw-float-left tw-mr-[8px]"> |
22 | <b>Contact us</b> | 22 | <b>Contact us</b> |
23 | <p>Email: contact@canrd.com</p> | 23 | <p>Email: contact@canrd.com</p> |
src/components/Header.vue
1 | <template> | 1 | <template> |
2 | <v-container> | 2 | <v-container> |
3 | - <div class="tw-m-auto tw-flex"> | ||
4 | - <div class="tw-float-left tw-h-[64px] tw-mt-[-4px] tw-w-[100px]"> | 3 | + <v-row class="tw-m-auto tw-flex tw-items-center"> |
4 | + <v-col cols="2" class="pa-0 tw-h-[64px]"> | ||
5 | <router-link to="/"><v-img src="/logo.jpg" /></router-link> | 5 | <router-link to="/"><v-img src="/logo.jpg" /></router-link> |
6 | - </div> | ||
7 | - <div class="tw-w-full tw-ml-[12px] tw-mr-[24px]"> | 6 | + </v-col> |
7 | + <v-col cols="6" class="px-0"> | ||
8 | <v-text-field | 8 | <v-text-field |
9 | label="Search keyword" | 9 | label="Search keyword" |
10 | hide-details="auto" | 10 | hide-details="auto" |
@@ -15,20 +15,24 @@ | @@ -15,20 +15,24 @@ | ||
15 | v-model="input" | 15 | v-model="input" |
16 | > | 16 | > |
17 | </v-text-field> | 17 | </v-text-field> |
18 | - </div> | ||
19 | - <v-btn variant="text" @click="dialogStore.updateDialog(true)" color="blue-darken-2 mt-4" | ||
20 | - >Concat Us | ||
21 | - </v-btn> | ||
22 | - </div> | 18 | + </v-col> |
19 | + <v-col cols="4" class="px-0"> | ||
20 | + <v-btn variant="text" @click="dialogStore.updateDialog(true)" color="blue-darken-2 mt-4" | ||
21 | + >Concat Us | ||
22 | + </v-btn> | ||
23 | + </v-col> | ||
24 | + </v-row> | ||
23 | </v-container> | 25 | </v-container> |
24 | <div class="tabs"> | 26 | <div class="tabs"> |
25 | <div class="tw-max-w-[1200px] tw-mx-auto"> | 27 | <div class="tw-max-w-[1200px] tw-mx-auto"> |
26 | <v-tabs | 28 | <v-tabs |
29 | + mobile-breakpoint="580" | ||
27 | v-model="tab" | 30 | v-model="tab" |
28 | bg-color="blue-darken-1" | 31 | bg-color="blue-darken-1" |
29 | slider-color="grey-lighten-3" | 32 | slider-color="grey-lighten-3" |
30 | tab-slider-size="6px" | 33 | tab-slider-size="6px" |
31 | selected-class="active" | 34 | selected-class="active" |
35 | + :grow="screenWidth > 600 ? false : true" | ||
32 | > | 36 | > |
33 | <v-tab :value="1" to="/" | 37 | <v-tab :value="1" to="/" |
34 | ><span @click="handleTabClick" class="text-grey-lighten-3 tw-font-bold">Home</span> | 38 | ><span @click="handleTabClick" class="text-grey-lighten-3 tw-font-bold">Home</span> |
@@ -55,6 +59,10 @@ import { useProductListStore } from '@/stores/product_list' | @@ -55,6 +59,10 @@ import { useProductListStore } from '@/stores/product_list' | ||
55 | import { useRouter } from 'vue-router' | 59 | import { useRouter } from 'vue-router' |
56 | import { useDialogStore } from '@/stores/dialog' | 60 | import { useDialogStore } from '@/stores/dialog' |
57 | import { useCategoryStore } from '@/stores/category' | 61 | import { useCategoryStore } from '@/stores/category' |
62 | +import { useDisplay } from 'vuetify' | ||
63 | + | ||
64 | +const { width: screenWidth } = useDisplay() | ||
65 | + | ||
58 | const dialogStore = useDialogStore() | 66 | const dialogStore = useDialogStore() |
59 | 67 | ||
60 | const productStore = useProductListStore() | 68 | const productStore = useProductListStore() |
src/components/MainTitleList.vue
1 | <template> | 1 | <template> |
2 | - <div class="text-blue-darken-1 text-h3 tw-text-center tw-mb-[16px] font-weight-bold"> | 2 | + <div class="text-blue-darken-1 text-h4 text-sm-h3 tw-text-center tw-mb-[16px] font-weight-bold"> |
3 | <div :class="titleCls">{{ title }}</div> | 3 | <div :class="titleCls">{{ title }}</div> |
4 | </div> | 4 | </div> |
5 | <div class="text-body-1 tw-max-w-[600px] tw-m-auto tw-mb-8"> | 5 | <div class="text-body-1 tw-max-w-[600px] tw-m-auto tw-mb-8"> |
@@ -16,7 +16,7 @@ | @@ -16,7 +16,7 @@ | ||
16 | </div> | 16 | </div> |
17 | <v-item-group multiple v-if="!responsive"> | 17 | <v-item-group multiple v-if="!responsive"> |
18 | <v-row> | 18 | <v-row> |
19 | - <v-col v-for="(item, index) in list" :key="index" cols="12" :lg="lgCol" md="4" sm="6"> | 19 | + <v-col v-for="(item, index) in list" :key="index" cols="6" :lg="lgCol" md="4" sm="6"> |
20 | <v-hover v-slot="{ isHovering, props }" open-delay="200" :disabled="disabled"> | 20 | <v-hover v-slot="{ isHovering, props }" open-delay="200" :disabled="disabled"> |
21 | <v-card | 21 | <v-card |
22 | color="blue-darken-1" | 22 | color="blue-darken-1" |
@@ -24,15 +24,12 @@ | @@ -24,15 +24,12 @@ | ||
24 | :elevation="isHovering ? 16 : 2" | 24 | :elevation="isHovering ? 16 : 2" |
25 | :class="{ 'on-hover': isHovering }" | 25 | :class="{ 'on-hover': isHovering }" |
26 | class="mx-auto" | 26 | class="mx-auto" |
27 | - height="295" | ||
28 | - width="260" | 27 | + max-width="260" |
29 | v-bind="props" | 28 | v-bind="props" |
30 | @click="handleCardClick(item)" | 29 | @click="handleCardClick(item)" |
31 | > | 30 | > |
32 | <v-img :src="item.imageUrl" /> | 31 | <v-img :src="item.imageUrl" /> |
33 | - <div | ||
34 | - class="text-center bg-blue-darken-1 tw-absolute tw-bottom-0 tw-text-center tw-w-full tw-h-9 tw-leading-9" | ||
35 | - > | 32 | + <div class="text-center bg-blue-darken-1 tw-text-center tw-w-full tw-h-9 tw-leading-9"> |
36 | {{ item.name }} | 33 | {{ item.name }} |
37 | </div> | 34 | </div> |
38 | </v-card> | 35 | </v-card> |
src/components/MainTitleListOdd.vue
1 | <template> | 1 | <template> |
2 | - <div class="text-blue-darken-1 text-h3 tw-text-center tw-mb-[16px] font-weight-bold"> | 2 | + <div class="text-blue-darken-1 tw-text-center tw-mb-[16px] font-weight-bold text-h4 text-sm-h3"> |
3 | <div :class="titleCls">{{ title }}</div> | 3 | <div :class="titleCls">{{ title }}</div> |
4 | </div> | 4 | </div> |
5 | <div class="text-body-1 tw-max-w-[600px] tw-m-auto tw-mb-8"> | 5 | <div class="text-body-1 tw-max-w-[600px] tw-m-auto tw-mb-8"> |
@@ -16,7 +16,7 @@ | @@ -16,7 +16,7 @@ | ||
16 | </div> | 16 | </div> |
17 | <v-item-group multiple> | 17 | <v-item-group multiple> |
18 | <v-row> | 18 | <v-row> |
19 | - <v-col v-for="(item, index) in list" :key="index" cols="12" lg="4" md="4" sm="6"> | 19 | + <v-col v-for="(item, index) in list" :key="index" cols="4" lg="4" md="4" sm="6"> |
20 | <v-hover v-slot="{ isHovering, props }" open-delay="200" :disabled="disabled"> | 20 | <v-hover v-slot="{ isHovering, props }" open-delay="200" :disabled="disabled"> |
21 | <v-card | 21 | <v-card |
22 | color="blue-darken-1" | 22 | color="blue-darken-1" |
@@ -24,14 +24,11 @@ | @@ -24,14 +24,11 @@ | ||
24 | :elevation="isHovering ? 16 : 2" | 24 | :elevation="isHovering ? 16 : 2" |
25 | :class="{ 'on-hover': isHovering }" | 25 | :class="{ 'on-hover': isHovering }" |
26 | class="pt-5 mx-auto" | 26 | class="pt-5 mx-auto" |
27 | - height="350" | ||
28 | v-bind="props" | 27 | v-bind="props" |
29 | @click="handleCardClick(item)" | 28 | @click="handleCardClick(item)" |
30 | > | 29 | > |
31 | - <v-img :src="item.imageUrl" width="250" class="text-center ma-auto" /> | ||
32 | - <div | ||
33 | - class="text-center bg-blue-darken-1 tw-absolute tw-bottom-0 tw-text-center tw-w-full tw-h-9 tw-leading-9" | ||
34 | - > | 30 | + <v-img :src="item.imageUrl" class="text-center ma-auto" /> |
31 | + <div class="text-center bg-blue-darken-1 tw-text-center tw-w-full tw-h-9 tw-leading-9"> | ||
35 | {{ item.name }} | 32 | {{ item.name }} |
36 | </div> | 33 | </div> |
37 | </v-card> | 34 | </v-card> |
src/main.ts
@@ -16,7 +16,7 @@ import messages from './message' | @@ -16,7 +16,7 @@ import messages from './message' | ||
16 | 16 | ||
17 | const app = createApp(App) | 17 | const app = createApp(App) |
18 | 18 | ||
19 | -const vuetify = createVuetify() | 19 | +const vuetify = createVuetify({}) |
20 | 20 | ||
21 | app.use(createPinia()) | 21 | app.use(createPinia()) |
22 | app.use(router) | 22 | app.use(router) |
src/views/Home.vue
@@ -67,7 +67,6 @@ | @@ -67,7 +67,6 @@ | ||
67 | <div class="tw-pt-[64px] tw-pb-[128px]"> | 67 | <div class="tw-pt-[64px] tw-pb-[128px]"> |
68 | <v-container> | 68 | <v-container> |
69 | <MainTitleList | 69 | <MainTitleList |
70 | - :responsive="true" | ||
71 | :title="t('Pack')" | 70 | :title="t('Pack')" |
72 | href="/pack" | 71 | href="/pack" |
73 | :list="packs" | 72 | :list="packs" |