Commit c29a89cb8072942106755840e94d482e6329e1d9

Authored by sanmu
1 parent 5fb875b5

up

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
@@ -12,7 +12,3 @@ html { @@ -12,7 +12,3 @@ html {
12 width: 100%; 12 width: 100%;
13 overflow-x: auto !important; 13 overflow-x: auto !important;
14 } 14 }
15 -body {  
16 - min-width: 1000px;  
17 - overflow-x: auto;  
18 -}  
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 &#39;@/stores/product_list&#39; @@ -55,6 +59,10 @@ import { useProductListStore } from &#39;@/stores/product_list&#39;
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 &#39;./message&#39; @@ -16,7 +16,7 @@ import messages from &#39;./message&#39;
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"