chengziding 5 miesięcy temu
rodzic
commit
0ac178de74

+ 8 - 3
.env.production

@@ -1,4 +1,9 @@
 ENV = 'production'
-NUXT_PUBLIC_DOMAIN_NAME = 'https://driveintelresearch.com'
-NUXT_PUBLIC_API_BASE = 'https://driveintelresearch.com/api/js/a/api'
-NUXT_PUBLIC_API_BASEURL = "https://driveintelresearch.com/api/js/userfiles"
+# 英文域名
+# NUXT_PUBLIC_DOMAIN_NAME = 'https://driveintelresearch.com'
+# NUXT_PUBLIC_API_BASE = 'https://driveintelresearch.com/api/js/a/api'
+# NUXT_PUBLIC_API_BASEURL = "https://driveintelresearch.com/api/js/userfiles"
+# 中文域名
+NUXT_PUBLIC_DOMAIN_NAME = 'https://www.dewente.com'
+NUXT_PUBLIC_API_BASE = 'https://www.dewente.com/api/js/a/api'
+NUXT_PUBLIC_API_BASEURL = "https://www.dewente.com/api/js/userfiles"

+ 1 - 0
.gitignore

@@ -23,3 +23,4 @@ logs
 .env
 .env.*
 !.env.example
+/web3.zip

+ 3 - 0
README.md

@@ -74,3 +74,6 @@ bun run preview
 ```
 
 Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
+
+
+

BIN
assets/images/report/img3_cn.png


+ 9 - 9
components/Footer/index.vue

@@ -5,7 +5,7 @@
         <img src="/assets/images/img3.png" alt="">
       </div>
       <div class="footer_l_text">
-        Driveintel Research is a leading independent segment market research consulting company, dedicated to publishing in-depth market research reports that support strategic business decision-making. Our comprehensive service offerings include competitive landscape analysis, market status and forecasting, IPO advisory, market entry strategies, global strategy, business planning, and project feasibility studies.
+        {{$t('common.footer.show')}}
       </div>
       <div class="footer_l_list">
         <img src="/assets/images/img4.png" alt="">
@@ -16,21 +16,21 @@
       </div>
     </div>
     <div class="footer_nav">
-      <div class="footer_nav_title">Quick Links</div>
+      <div class="footer_nav_title">{{$t('common.quickLinks')}}</div>
       <div class="footer_nav_list">
-        <a href="/">Home</a>
-        <a href="/report-industries">Reports </a>
-        <a href="/market">Custom Research </a>
-        <a href="/news-categories">Industry News</a>
-        <a href="/aboutUs">About Us</a>
-        <a href="/contactUs">Contact</a>
+        <a href="/">{{$t('common.navigate.home')}}</a>
+        <a href="/report-industries">{{$t('common.navigate.report')}} </a>
+        <a href="/market">{{$t('common.navigate.market')}} </a>
+        <a href="/news-categories">{{$t('common.navigate.news')}}</a>
+        <a href="/aboutUs">{{$t('common.navigate.aboutUs')}}</a>
+        <a href="/contactUs">{{$t('common.navigate.contactUs')}}</a>
       </div>
       <div class="footer_nav_contactUs">
         <div></div>
       </div>
     </div>
     <div class="footer_contactUs">
-      <div class="footer_contactUs_title">Contact Us</div>
+      <div class="footer_contactUs_title">{{$t('common.navigate.contactUs')}}</div>
       <div class="footer_contactUs_item">
         <div class="footer_contactUs_item_l">
           <span class="iconfont icon-24gf-phoneLoudspeaker"></span>

+ 12 - 8
components/Header/index.vue

@@ -26,23 +26,26 @@
       <div class="navBox_c">
         <n-dropdown :options="reportOptions" trigger="hover" size="huge" @select="chooseReportMenu">
           <a :class="{'router-link-active':(route.name=='reports')}" :href="jumpLink('/report-industries')">
-            Reports
+            {{$t('common.navigate.report')}}
           </a>
         </n-dropdown>
         <a :class="{'router-link-active':route.path=='/market'}" :href="jumpLink('/market')">
-          Custom Research
+          <!-- Custom Research -->
+          {{$t('common.navigate.market')}}
         </a>
         <n-dropdown :options="newsOptions" trigger="hover" size="huge" @select="chooseNewsMenu">
           <a :class="{'router-link-active':(route.name=='newsCategories'||route.path=='/news-categories')}" :href="jumpLink('/news-categories')">
-            Industry News
+            <!-- Industry News -->
+            {{$t('common.navigate.news')}}
           </a>
         </n-dropdown>
         <n-dropdown :options="aboutOptions" trigger="hover" size="huge" @select="chooseAboutMenu">
           <a :class="{'router-link-active':route.path=='/about'||route.path=='/link'||route.path=='/order'||route.path=='/term'||route.path=='/qualify'}" :href="jumpLink('/about')">
-            About Us
+            <!-- About Us -->
+            {{$t('common.navigate.aboutUs')}}
           </a>
         </n-dropdown>
-        <a :class="{'router-link-active':route.path=='/contactUs'}" :href="jumpLink('/contactUs')">Contact</a>
+        <a :class="{'router-link-active':route.path=='/contactUs'}" :href="jumpLink('/contactUs')">{{$t('common.navigate.Contact')}}</a>
       </div>
       <div class="navBox_r">
         <div class="search">
@@ -55,11 +58,12 @@
             </n-dropdown>
           </div>
           <div class="search_c">
-            <n-input v-model:value="keyword" @keydown.enter="handleSearch()" type="text" clearable placeholder="Please Enter Keywords" />
+            <n-input v-model:value="keyword" @keydown.enter="handleSearch()" type="text" clearable :placeholder="$t('common.keyword')" />
           </div>
           <div class="search_r" @click="handleSearch()">
             <span class="iconfont icon-sousuo"></span>
-            Search
+            <!-- Search -->
+            {{$t('myInfo.search')}}
           </div>
         </div>
       </div>
@@ -91,7 +95,7 @@
           <n-input v-model:value="keyword" type="text" clearable :placeholder="$t('report.content.keyword')" />
         </div>
         <div class="head_c_r" @click="handleSearch()">
-          Search
+          {{$t('myInfo.search')}}
         </div>
       </div>
     </div>

+ 3 - 3
components/connectUs/index.vue

@@ -1,8 +1,8 @@
 <template>
   <div class="customBox">
-    <div class="customBox_title">No Relevant Report Found? Please Contact Us</div>
-    <div class="customBox_content">Need more information? Our team is ready to assist.Reach out today for expert support tailored to your needs.</div>
-    <a class="customBox_btn" @click="handleContact()">Custom Reports</a>
+    <div class="customBox_title">{{$t('home.custom.sndtitle')}}</div>
+    <div class="customBox_content">{{$t('home.custom.needMore')}}</div>
+    <a class="customBox_btn" @click="handleContact()">{{$t('home.custom.title')}}</a>
     <img class="customBox_img" src="/assets/images/img1.png" alt="">
   </div>
   <n-modal :show="demandShow" @close="demandShow = false" @esc="demandShow = false" @mask-click="demandShow = false" :style="'width: 720px'">

+ 4 - 1
composables/useHttp.ts

@@ -28,7 +28,10 @@ class HttpRequest {
       if (process.client && process.env.NODE_ENV == "development") {
         baseURL = "/api";
       } else {
-        baseURL = baseURL.replace('https://driveintelresearch.com', requestURL.origin)
+        // 英文站
+        // baseURL = baseURL.replace('https://driveintelresearch.com', requestURL.origin)
+        // 中文站
+        baseURL = baseURL.replace('https://www.driveintelresearch.com', requestURL.origin)
       }
       const newOptions: UseFetchOptions<T> = {
         baseURL: baseURL,

Plik diff jest za duży
+ 684 - 483
lang/en-us.ts


+ 1 - 1
lang/i18n.ts

@@ -2,7 +2,7 @@ import zh from './zh-cn.js'//中文
 import en from './en-us.js'//英文
 
 const i18n = {
-  fallbackLocale: 'en',//回退策略,指定的locale中没有找到对应资源的情况下使用的locale
+  fallbackLocale: 'zh',//回退策略,指定的locale中没有找到对应资源的情况下使用的locale
   messages: { //要渲染的信息,有多少语言就添加多少种
     en: en,
     zh: zh

Plik diff jest za duży
+ 702 - 389
lang/zh-cn.ts


+ 2 - 2
nuxt.config.ts

@@ -8,7 +8,7 @@ export default defineNuxtConfig({
   ssr: true,
   app: {
     head: {
-      title: '百谏方略',//网站地址栏位置的标题
+      title: '德文特',//网站地址栏位置的标题
       meta: [
         { charset: 'utf-8' },
         { name: 'viewport', content: 'width=device-width, initial-scale=1' },
@@ -71,7 +71,7 @@ export default defineNuxtConfig({
   modules: ["nuxtjs-naive-ui", '@nuxtjs/i18n', '@pinia/nuxt'],
   i18n: {
     locales: ['en', 'zh'],
-    defaultLocale: 'en',
+    defaultLocale: 'zh',
     vueI18n: './lang/i18n.ts',
     customRoutes: 'config',
     // parsePages: false,

Plik diff jest za duży
+ 39 - 39
pages/about/index.vue


+ 37 - 76
pages/about/link.vue

@@ -3,57 +3,32 @@
     <div class="top">
       <img src="@/assets/images/about/img1.png" alt="" />
       <div>
-        <div class="top_title">About Us</div>
+        <div class="top_title">{{$t('common.navigate.aboutUs')}}</div>
         <div class="top_location">
           <span class="iconfont icon-weizhi"></span>
-          Current Location : Home <span class="iconfont icon-dkw_guanbi-" /> About Us
+          {{$t('report.currentLocation')}} : {{$t('common.navigate.home')}} <span class="iconfont icon-dkw_guanbi-" /> {{$t('common.navigate.aboutUs')}}
           <span class="iconfont icon-dkw_guanbi-" />
-          <span>Research Method</span>
+          <span>{{$t('common.navAboutUs.method')}}</span>
         </div>
       </div>
     </div>
 
     <div class="research-content">
       <div class="content-item-01">
-        DRIVEINTEL, with its rigorous research methods and extensive industry experience, is
-        dedicated to providing high-quality industry research reports for clients. Our
-        research system covers both primary and secondary research,gathering comprehensive
-        and accurate data from multiple dimensions. Primary research involves in-depth
-        discussions with key participants in the industry value chain, collecting market
-        dynamics, trend forecasts, and critical data toensure the authority and
-        forward-looking nature of the reports. Secondary research integrates data from
-        public and professional sources such as government agencies, industry
-        associations, company reports, and independentresearch organizations, combined
-        with DRIVEINTEL's proprietary database for in-depth analysis. Throughout the research
-        process, we consider core factors such as government policies, market environment,
-        competitive landscape,industry technological innovation, market risks, and
-        opportunities, ensuring the comprehensiveness and reliability of our research
-        results.
+        {{$t('about.text1')}}
       </div>
       <div class="content-item-02">
-        In the field of industry research, DRIVEINTEL has developed a mature research
-        methodology and industry evaluation system, utilizing scientific analysis tools
-        such as the industry lifecycle theory, PEST analysis, Porter's Five Forces model,
-        SWOT analysis, Boston Matrix, and Porter's Diamond theory to conduct in-depth
-        analysis of key dimensions such as market supply and demand, competitive
-        landscape, profit models, and industrial chain development. Based on long-term
-        industrytracking and data accumulation, we can accurately forecastfuture industry
-        trends and provide clients with comprehensive market insights. Our research
-        reportsnot only cover the overall industry market capacity, segmentation data,
-        import-expor situation, and market demand characteristics but also conduct
-        in-depthresearch on the operational conditions of key enterprises, helping clients
-        formulate scientifically soundstrategic decisions and seize opportunities in a
-        complexand dynamic market environment.
+        {{$t('about.text2')}}
       </div>
     </div>
 
     <div class="method-box method-pc-box">
       <div class="method-item">
         <div class="method-left method-lr">
-          <p class="title">Bottom Up Research Method</p>
+          <p class="title">{{$t('about.Bottom')}}</p>
         </div>
         <div class="method-right method-lr">
-          <p class="title">Top Down Research Methodology</p>
+          <p class="title">{{$t('about.Top')}}</p>
         </div>
       </div>
       <div class="level_top">
@@ -86,7 +61,7 @@
     <div class="method-box method-phone-box">
       <div class="method-item">
         <div class="method-left method-lr">
-          <p class="title">Bottom Up Research Method</p>
+          <p class="title">{{$t('about.Bottom')}}</p>
         </div>
       </div>
       <div :class="['method-item ', `method-level_${index}`]" v-for="(item, index) in methodLevel" :key="index">
@@ -103,7 +78,7 @@
       </div>
       <div class="method-item">
         <div class="method-left method-lr">
-          <p class="title">Top Down Research Methodology</p>
+          <p class="title">{{$t('about.Top')}}</p>
         </div>
       </div>
       <div :class="['method-item ', `method-level_${index}`]" v-for="(item, index) in methodLevel" :key="index">
@@ -121,42 +96,36 @@
     </div>
 
     <div class="method-content">
-      <div class="title">Multidimensional Data Cross Validation Method</div>
+      <div class="title">{{$t('about.Multidimensional')}}</div>
       <div class="content-box">
         <div class="content-item">
-          <p class="item-title">Data Source Triangulation</p>
+          <p class="item-title">{{$t('about.Source')}}</p>
           <p class="item-text">
-            We validate data by comparing internal records (sales, customer, financial)
-            with multiple independenitem-ernal sources (industry reports,
-            governmentstatistics, market research).
+            {{$t('about.WeValidate')}}
           </p>
         </div>
         <div class="content-item">
-          <p class="item-title">Supply Chain and Demand Verification</p>
+          <p class="item-title">{{$t('about.SupplyChain')}}</p>
           <p class="item-text">
-            We verify data across the supply chain, comparingproduction and consumption
-            data (output vs.purchasevolumes, user surveys) toassess supply-demanddynamics.
+            {{$t('about.WeVerify')}}
           </p>
         </div>
         <div class="content-item">
-          <p class="item-title">Methodological Cross-Validation</p>
+          <p class="item-title">{{$t('about.Methodological')}}</p>
           <p class="item-text">
-            We cross-validate findings using diverse researchmethods (surveys, expert
-            interviews) and analyticalmodels (time series, regression) to ensureaccuracy.
+            {{$t('about.WeCross')}}
           </p>
         </div>
         <div class="content-item">
-          <p class="item-title">Temporal Data Analysis</p>
+          <p class="item-title">{{$t('about.TemporalData')}}</p>
           <p class="item-text">
-            We analyze data across short-term (quarterly, monthly) andlong-term (annual,
-            multi-year) timeframes, comparinghistorical and real-time data for
-            comprehensivevalidation.
+            {{$t('about.WeAnalyze')}}
           </p>
         </div>
 
         <div class="data-cross-img">
           <img class="DataCross" src="@/assets/images/about/DataCross.png" alt="" />
-          <div class="data-cross-text">Multidimensional Data Cross Validation Method</div>
+          <div class="data-cross-text">{{$t('about.Multidimensional')}}</div>
         </div>
       </div>
     </div>
@@ -164,17 +133,9 @@
     <div class="data-source">
       <div class="source-content">
         <img class="source-img" src="@/assets/images/about/DataSource.png" width="120" alt="" hspace="8" />
-        <p class="text-title">Data Source</p>
+        <p class="text-title">{{$t('about.Source')}}</p>
         <p class="text-text">
-          Data quality and reliability are paramount to our company. We ensure accuracy
-          and effectiveness through rich and diverse datasources. Our primary data is
-          gathered via comprehensive interviews with key stakeholders, including senior
-          corporate managers,industry experts, supply chain participants, and end
-          consumers. This allows us to capture critical insights into strategic
-          planning,policy interpretation, supply chain dynamics, and product usage. Our
-          secondary data, encompassing government statistics,industry reports, consulting
-          analyses, financial disclosures, academic research,news media, and international
-          sources, provides robust support for dataverification and analysis.
+          {{$t('about.DataQuality')}}
         </p>
       </div>
     </div>
@@ -228,49 +189,49 @@ import level44 from "@/assets/images/about/level_44.png";
 const methodLevel = [
   {
     left: {
-      title: "Industry Overview",
-      text: "Macro analysis of the entire industry, including research on market size, growth trends, competitivelandscape,industry policies, etc.",
+      title: t("about.lab1"),
+      text: t("about.texta1"),
       img: level01,
     },
     right: {
-      title: "Company Research",
-      text: "Select some representative companies for in-depth research, including analysis of the company's businessmodel, market position, financial status, etc.",
+      title: t("about.lab3"),
+      text: t("about.texta3"),
       img: level44,
     },
   },
   {
     left: {
-      title: "Segmentation Analysis",
-      text: "Select Some more segments within the industry and analyze them in detail, including marketcharacteristics, major players, development trends, etc.",
+      title: t("about.lab2"),
+      text: t("about.texta2"),
       img: level02,
     },
     right: {
-      title: "Industry Overview",
-      text: "After conducting research on subdivided fields, the cases of individual companies are integrated toconduct a macro analysis of the entire industry.",
+      title: t("about.lab6"),
+      text: t("about.texta6"),
       img: level33,
     },
   },
   {
     left: {
-      title: "Company Research",
-      text: "Select representative companies according to subdivided fields for in-depthresearch,including analysis of company background, competitiveadvantages, financial status, strategicplanning, etc.",
+      title: t("about.lab8"),
+      text: t("about.texta8"),
       img: level03,
     },
     right: {
-      title: "Segmentation Analysis",
-      text: "Through the research of different companies, find out their common segments or keybusinesses, and conduct a detailed analysis of the field.",
+      title: t("about.lab7"),
+      text: t("about.texta7"),
       img: level22,
     },
   },
   {
     left: {
-      title: "Comprehensive Evaluation",
-      text: "After conducting research on the entire industry, subdivisions and companies,conduct comprehensive assessment of the researchresults to form a view on thefuture trends andpotential opportunities of the industry.",
+      title: t("about.lab4"),
+      text: t("about.texta4"),
       img: level04,
     },
     right: {
-      title: "Company Research",
-      text: "Select some representative companies for in-depth research, including analysis of thecompany's business model, market position, financial status, etc.",
+      title: t("about.lab8"),
+      text: t("about.texta8"),
       img: level11,
     },
   },

+ 15 - 30
pages/about/order.vue

@@ -3,18 +3,18 @@
     <div class="top">
       <img src="@/assets/images/about/img1.png" alt="" />
       <div>
-        <div class="top_title">About Us</div>
+        <div class="top_title">{{$t('common.navigate.aboutUs')}}</div>
         <div class="top_location">
           <span class="iconfont icon-weizhi"></span>
-          Current Location : Home <span class="iconfont icon-dkw_guanbi-"></span> About
-          Us <span class="iconfont icon-dkw_guanbi-"></span>
-          <span>How to Order</span>
+          {{$t('report.currentLocation')}} : {{$t('common.navigate.home')}} <span class="iconfont icon-dkw_guanbi-"></span> {{$t('common.navigate.aboutUs')}}
+          <span class="iconfont icon-dkw_guanbi-"></span>
+          <span>{{$t('common.navAboutUs.HowtoOrder')}}</span>
         </div>
       </div>
     </div>
 
     <div class="order-container">
-      <p class="container-title">How to Order</p>
+      <p class="container-title">{{$t('common.navAboutUs.HowtoOrder')}}</p>
 
       <div class="list-box">
         <div class="container-item" v-for="(item, index) in orderContainer" :key="index">
@@ -77,43 +77,28 @@ import order_05 from "@/assets/images/about/order_05.png";
 const orderContainer = [
   {
     img: order_01,
-    title: "Contact",
-    text: [
-      "Fill in your contact information, and the company will quickly match thespecialist to get in touch with you",
-      "You can also directly call our customer service hotline or add customer service WeChat",
-    ],
+    title: t("about.pFstTile"),
+    text: [t("about.pFstDesc01"), t("about.pFstDesc02")],
   },
   {
     img: order_02,
-    title: "Samples",
-    text: [
-      "One on one business specialist will send the complete version of the sample",
-      "If you need to customize the report,professional analysts will bearranged to communicate with youone-on-one and provide you withcustomized samples",
-    ],
+    title: t("about.pSndTitle"),
+    text: [t("about.pSndDesc01"), t("about.pSndDesc02")],
   },
   {
     img: order_03,
-    title: "Payment",
-    text: [
-      "Both parties sign a report purchasecontract",
-      "Support Paypal, Visa, UnionPayand MasterCard Payment",
-    ],
+    title: t("about.pThrTitle"),
+    text: [t("about.pThrDesc01"), t("about.pThrDesc02")],
   },
   {
     img: order_04,
-    title: "Delivery",
-    text: [
-      "PDF report (sent online 2-3 workingdays after payment)",
-      "WORD version report (sent online2-3 working days after payment)",
-      "Paper version report (sent via EMSor DHL within 3-5 working dayafter payment)",
-    ],
+    title: t("about.pForTitle"),
+    text: [t("about.pForDesc01"), t("about.pForDesc02"), t("about.pForDesc03")],
   },
   {
     img: order_05,
-    title: "After-Sales",
-    text: [
-      "Within six months of purchasing thereport, if you have any questionsabout the details of our report, youcan contact the report analyst atany time. The analyst will continueto follow up and solve your problemuntil you are satisfied",
-    ],
+    title: t("about.pFivTitle"),
+    text: [t("about.pFivDesc")],
   },
 ];
 </script>

Plik diff jest za duży
+ 15 - 20
pages/about/term.vue


+ 3 - 3
pages/contact/index.vue

@@ -3,16 +3,16 @@
     <div class="top">
       <img src="@/assets/images/contactUs/img5.png" alt="">
       <div>
-        <div class="top_title">Contact Us</div>
+        <div class="top_title">{{$t('common.navigate.contactUs')}}</div>
         <div class="top_location">
           <span class="iconfont icon-weizhi"></span>
-          Current Location : Home <span class="iconfont icon-dkw_guanbi-"></span> <span>Contact Us</span>
+          {{$t('report.currentLocation')}} : {{$t('common.navigate.home')}} <span class="iconfont icon-dkw_guanbi-"></span> <span>{{$t('common.navigate.contactUs')}}</span>
         </div>
       </div>
     </div>
     <div class="content">
       <div class="content_l">
-        <div class="content_l_title">DRIVEINTEL Market Research</div>
+        <div class="content_l_title">{{$t('common.navAboutUs.MarketResearch')}}</div>
         <div class="content_l_line"></div>
         <n-form require-mark-placement="left" ref="formRef" label-align="left" :model="formData" :rules="rules">
           <div class="flex">

+ 40 - 40
pages/index.vue

@@ -10,7 +10,7 @@
             <div class="desc">
               <div class="desc_title">{{item.title }}</div>
               <div class="desc_tig">{{ item.desc }}</div>
-              <a href="/report-industries" class="desc_btn">Know More</a>
+              <a href="/report-industries" class="desc_btn">{{$t('home.banner.knowMore')}}</a>
             </div>
           </n-carousel-item>
         </template>
@@ -21,45 +21,45 @@
         <span class="iconfont icon-analytics"></span>
         <div class="item_t">
           <n-number-animation ref="numberAnimationInstRef" :from="0" :to="15" />
-          Years+
+          {{$t('home.banner.lab1')}}
         </div>
-        <div class="item_b">Segmented Industry Research Experience</div>
+        <div class="item_b">{{$t('home.banner.lab1_1')}}</div>
       </div>
       <div class="item ">
         <img class="item_img" src="/assets/images/img9.png" alt="">
         <div class="item_t">
           <n-number-animation ref="numberAnimationInstRef" :from="0" :to="20000" />
-          +
+          {{$t('home.banner.lab2')}}
         </div>
-        <div class="item_b">Segmented Product Report Covering the Entire Industry</div>
+        <div class="item_b">{{$t('home.banner.lab2_1')}}</div>
       </div>
       <div class="item ">
         <span class="iconfont icon-yinhuanzhili-qiyezichayinhuan"></span>
         <div class="item_t">
           <n-number-animation ref="numberAnimationInstRef" :from="0" :to="10000" />
-          +
+          {{$t('home.banner.lab3')}}
         </div>
-        <div class="item_b">Segmented Product Reports Covering the Entire Industry</div>
+        <div class="item_b">{{$t('home.banner.lab3_1')}}</div>
       </div>
       <div class="item ">
         <span class="iconfont icon-dinghuoshujufenxi"></span>
         <div class="item_t">
           <n-number-animation ref="numberAnimationInstRef" :from="0" :to="12000" />
-          K+
+          {{$t('home.banner.lab4')}}
         </div>
-        <div class="item_b">Data Point Information</div>
+        <div class="item_b">{{$t('home.banner.lab4_1')}}</div>
       </div>
       <div class="item ">
         <span class="iconfont icon-dinghuoshujufenxi"></span>
         <div class="item_t">
           <n-number-animation ref="numberAnimationInstRef" :from="0" :to="12000" />
-          K+
+          {{$t('home.banner.lab5')}}
         </div>
-        <div class="item_b">Data Point Information</div>
+        <div class="item_b">{{$t('home.banner.lab5_1')}}</div>
       </div>
     </div>
     <div class="marketBox">
-      <div class="marketBox_title">Market Express</div>
+      <div class="marketBox_title">{{$t('home.news.title')}}</div>
       <n-carousel :autoplay="false" ref="swiperRef" :interval="3000">
         <!-- carouselList -->
         <template v-for="item in marketInfo1.list" :key="item">
@@ -68,7 +68,7 @@
               <img class="carousel-img" :src="BaseUrl+'/fileupload/'+item.filePath+item.fileName" />
               <div class="desc">
                 <div class="desc_title">{{item.title}}</div>
-                <a class="desc_btn" :href="'/news/'+item.webTitle+'-'+item.id">View details</a>
+                <a class="desc_btn" :href="'/news/'+item.webTitle+'-'+item.id">{{$t('home.viewDetails')}}</a>
               </div>
             </div>
           </n-carousel-item>
@@ -84,8 +84,8 @@
     <div class="popularBox">
       <div class="popularBox_l">
         <div class="popularBox_l_title">
-          <div class="popularBox_l_title_l">Popular Research Reports</div>
-          <a class="popularBox_l_title_r" href="/report-industries">Know More <span class="iconfont icon-jiantou24"></span> </a>
+          <div class="popularBox_l_title_l">{{$t('home.sndtitle')}}</div>
+          <a class="popularBox_l_title_r" href="/report-industries">{{$t('home.knowMore')}} <span class="iconfont icon-jiantou24"></span> </a>
         </div>
         <div class="popularBox_l_list">
           <!-- reports -->
@@ -97,7 +97,7 @@
               </a>
               <div class="popularBox_l_list_item_box">
                 <a class="popularBox_l_list_item_box_title" :href="'/reports/'+v.webTitle+'-'+v.id">{{v.title}}</a>
-                <a class="popularBox_l_list_item_box_btn" :href="'/reports/'+v.webTitle+'-'+v.id">View details</a>
+                <a class="popularBox_l_list_item_box_btn" :href="'/reports/'+v.webTitle+'-'+v.id">{{$t('home.viewDetails')}}</a>
               </div>
             </div>
           </template>
@@ -105,7 +105,7 @@
       </div>
       <div class="popularBox_r">
         <div class="popularBox_r_title">
-          Report Coverage Areas
+          {{$t('home.report.title')}}
         </div>
         <div class="popularBox_r_list">
           <div v-for="(v, i) in professionList" :key="i">
@@ -116,7 +116,7 @@
       </div>
     </div>
     <div class="hotBox">
-      <div class="hotBox_title">Hot News</div>
+      <div class="hotBox_title">{{$t('home.news.hotNews')}}</div>
       <div class="hotBox_list">
         <template v-for="(v,i) in markets" :key="i">
           <div class="hotBox_list_item" @click.prevent="viewNewsDetail(v)" v-if="i<3">
@@ -130,10 +130,10 @@
           </div>
         </template>
       </div>
-      <a class="hotBox_btn" href="/news-categories">Know More</a>
+      <a class="hotBox_btn" href="/news-categories">{{$t('home.knowMore')}}</a>
     </div>
     <div class="researchBox">
-      <div class="researchBox_title">Research Advantages</div>
+      <div class="researchBox_title">{{$t('home.report.researchAdvantages')}}</div>
       <div class="researchBox_list">
         <template v-for="(v,i) in list2" :key="i">
           <div class="researchBox_list_item ">
@@ -145,8 +145,8 @@
       </div>
     </div>
     <div class="customersBox">
-      <div class="customersBox_title">Customers Served</div>
-      <div class="customersBox_subTitle">Trusted by Leading Companies Worldwide.</div>
+      <div class="customersBox_title">{{$t('home.report.customersServed')}}</div>
+      <div class="customersBox_subTitle">{{$t('home.report.trusted')}}</div>
       <div class="customersBox_carousel">
         <!-- draggable -->
         <n-carousel ref="card5SwiperRef" autoplay draggable :space-between="0" loop :interval="2000">
@@ -235,60 +235,60 @@ const marketInfo2 = ref();
 const professionList = [
   {
     imgUrl: img01,
-    title: 'Chemical and Materials',
+    title: t('about.profession1'),
   },
   {
     imgUrl: img02,
-    title: 'Aerospace',
+    title: t('about.profession2'),
   },
   {
     imgUrl: img03,
-    title: 'Agriculture',
+    title: t('about.profession3'),
   },
   {
     imgUrl: img04,
-    title: 'Machinery and Equipment',
+    title: t('about.profession4'),
   },
   {
     imgUrl: img05,
-    title: 'Medical and Bio-Health',
+    title: t('about.profession5'),
   },
   {
     imgUrl: img06,
-    title: 'Electronics and Semiconductors',
+    title: t('about.profession6'),
   },
   {
     imgUrl: img07,
-    title: 'Software and Services',
+    title: t('about.profession7'),
   },
   {
     imgUrl: img08,
-    title: 'Consumer Products <br/> and Retail',
+    title: t('about.profession8'),
   },
   {
     imgUrl: img09,
-    title: 'Automobile and Transportation',
+    title: t('about.profession9'),
   },
   {
     imgUrl: img10,
-    title: 'Food and Beverage',
+    title: t('about.profession10'),
   },
   {
     imgUrl: img11,
-    title: 'Emerging Industries',
+    title: t('about.profession11'),
   },
   {
     imgUrl: img12,
-    title: 'Other Industries',
+    title: t('about.profession12'),
   },
 ]
 const list2 = ref([
-  { name: 'Global Perspective', img: researchAdvantages1, imga: researchAdvantages1_a },
-  { name: 'Multidimensional Research', img: researchAdvantages2, imga: researchAdvantages2_a },
-  { name: 'Massive Database', img: researchAdvantages3, imga: researchAdvantages3_a },
-  { name: 'Foresight Analyst Team', img: researchAdvantages4, imga: researchAdvantages4_a },
-  { name: 'Customized Services', img: researchAdvantages5, imga: researchAdvantages5_a },
-  { name: '24-Hour Support', img: researchAdvantages6, imga: researchAdvantages6_a },
+  { name: t('home.advantage.lab1'), img: researchAdvantages1, imga: researchAdvantages1_a },
+  { name: t('home.advantage.lab2'), img: researchAdvantages2, imga: researchAdvantages2_a },
+  { name: t('home.advantage.lab3'), img: researchAdvantages3, imga: researchAdvantages3_a },
+  { name: t('home.advantage.lab4'), img: researchAdvantages4, imga: researchAdvantages4_a },
+  { name: t('home.advantage.lab5'), img: researchAdvantages5, imga: researchAdvantages5_a },
+  { name: t('home.advantage.lab6'), img: researchAdvantages6, imga: researchAdvantages6_a },
 ])
 const list3 = ref([
   [customersServed1, customersServed2, customersServed3, customersServed4, customersServed5, customersServed6],

Plik diff jest za duży
+ 30 - 30
pages/market/index.vue


+ 4 - 4
pages/news-categories/detail.vue

@@ -2,7 +2,7 @@
   <div class="page" id="page">
     <div class="location">
       <div class="location_l"> <span class="iconfont icon-weizhi"></span></div>
-      <div class="location_r"> Current Location : Home <span class="iconfont icon-dkw_guanbi-"></span> <span>Industry News</span></div>
+      <div class="location_r"> {{$t('report.currentLocation')}} : {{$t('common.navigate.home')}} <span class="iconfont icon-dkw_guanbi-"></span> <span>{{$t('common.navigate.news')}}</span></div>
     </div>
     <div class="content">
       <div class="content_title">{{ vo?.title }}</div>
@@ -14,15 +14,15 @@
         <div v-html="vo?.context"></div>
       </div>
       <div class="content_btn" @click="router.go(-1)">
-        Return to List
+        {{$t('news.ReturntoList')}}
       </div>
       <div class="content_list">
         <div class="content_list_item" v-if="last?.title">
-          Previous Article
+          {{$t('news.last')}}
           <a :href="'/news/'+last.webTitle+'-'+last.id">{{last?.title}}</a>
         </div>
         <div class="content_list_item" v-if="next?.title">
-          Next Article
+          {{$t('news.next')}}
           <a :href="'/news/'+next.webTitle+'-'+next.id">{{next?.title}}</a>
         </div>
       </div>

+ 9 - 9
pages/news-categories/index.vue

@@ -3,17 +3,17 @@
     <div class="top">
       <img src="@/assets/images/newsCategories/img1.png" alt="">
       <div>
-        <div class="top_title">Industry News</div>
+        <div class="top_title">{{$t('common.navigate.news')}}</div>
         <div class="top_location">
           <span class="iconfont icon-weizhi"></span>
-          Current Location : Home <span class="iconfont icon-dkw_guanbi-"></span> <span>Industry News</span>
+          {{$t('report.currentLocation')}} : {{$t('common.navigate.home')}} <span class="iconfont icon-dkw_guanbi-"></span> <span>{{$t('common.navigate.news')}}</span>
         </div>
       </div>
     </div>
     <div class="box">
       <div class="box_l">
         <div class="box_l_title">
-          <div>Information Type</div>
+          <div>{{$t('news.InformationType')}}</div>
           <div>
             <span class="iconfont icon-shouqi1"></span>
           </div>
@@ -30,7 +30,7 @@
           </template>
         </div>
         <div class="box_l_title">
-          <div>Industry Segment</div>
+          <div>{{$t('report.IndustrySegment')}}</div>
           <div>
             <span class="iconfont icon-shouqi1"></span>
           </div>
@@ -56,20 +56,20 @@
             <div class="box_r_item_content">
               <div class="date">{{formatDateEn(item.publishDate) }}</div>
               <a :href="'/news/' +item.webTitle +'-' +item.id" class="title">{{ item.title }}</a>
-              <a :href="'/news/' +item.webTitle +'-' +item.id" class="btn">Know More</a>
+              <a :href="'/news/' +item.webTitle +'-' +item.id" class="btn">{{$t('home.knowMore')}}</a>
             </div>
           </div>
         </div>
         <div class="pageBox" v-if="pageList?.list.length>0">
           <n-pagination show-quick-jumper :page-count="pageList?.count" :on-update:page="changePage" :page-slot="6">
             <template #prev>
-              <div class="pageBox_btn">Previous</div>
+              <div class="pageBox_btn">{{$t('report.Previous')}}</div>
             </template>
             <template #next>
-              <div class="pageBox_btn">Next</div>
+              <div class="pageBox_btn">{{$t('report.Next')}}</div>
             </template>
             <template #goto>
-              <div class="pageBox_inp">Go To</div>
+              <div class="pageBox_inp">{{$t('report.GoTo')}}</div>
             </template>
           </n-pagination>
         </div>
@@ -82,7 +82,7 @@
         </div>
         <div class="load">
           <n-spin size="large">
-            <template #description>Loading...</template>
+            <template #description>{{$t('report.Loading')}}...</template>
           </n-spin>
         </div>
       </div>

+ 19 - 19
pages/report-industries/detail.vue

@@ -2,7 +2,7 @@
   <div class="page">
     <div class="location">
       <div class="location_l"> <span class="iconfont icon-weizhi"></span></div>
-      <div class="location_r"> Current Location : Home <span class="iconfont icon-dkw_guanbi-"></span> <span>Reports</span></div>
+      <div class="location_r"> {{$t('report.currentLocation')}} : {{$t('common.navigate.home')}} <span class="iconfont icon-dkw_guanbi-"></span> <span>{{$t('report.Reports')}}</span></div>
     </div>
     <div class="content">
       <div class="content_t">
@@ -13,14 +13,14 @@
             <div class="content_t_l">
               <div class="content_t_l_title">{{ record?.title }}</div>
               <div class="content_t_l_tag">
-                <div>Published:<span>{{ record?.publishDate }}</span></div>
-                <div>ReportID:<span>{{ record?.reportCode }}</span></div>
-                <div>Report Format: <span class="desc-icon">
+                <div>{{$t('report.Published')}}:<span>{{ record?.publishDate }}</span></div>
+                <div>{{$t('report.ReportID')}}:<span>{{ record?.reportCode }}</span></div>
+                <div>{{$t('report.reportFormat')}}: <span class="desc-icon">
                     <img src="@/assets/images/doc.png" />
                     <img src="@/assets/images/pdf.png" />
                     <img src="@/assets/images/xlsx.png" />
                   </span></div>
-                <div>Delivery:<span>48-72h</span></div>
+                <div>{{$t('report.Delivery')}}:<span>48-72h</span></div>
               </div>
               <div class="content_t_l_btn">
                 <template v-for="(vo,i) in priceFullList" :key="i">
@@ -28,17 +28,17 @@
                     <div class="content_t_l_btn_item_l">
                       <div class="content_t_l_btn_item_l_t"> {{
                           vo.configName?.split("-")[3] == "单用户版单价"
-                            ? 'Single User License'
+                            ? $t('report.SingleUserLicense')
                             : vo.configName?.split("-")[3] == "多用户版单价"
-                            ? 'Multi User license'
-                            : 'Enterprise License'
+                            ? $t('report.MultiUserLicense')
+                            : $('report.EnterpriseLicense')
                         }}</div>
                       <div class="content_t_l_btn_item_l_b">{{
                           vo.configName?.split("-")[3] == "单用户版单价"
-                            ? 'Only for l user access'
+                            ? $t('report.Onlyforluseraccess')
                             : vo.configName?.split("-")[3] == "多用户版单价"
-                            ? '1-10 users access'
-                            : 'UJnlimited users acces!'
+                            ? $t('report.usersaccess')
+                            : $t('report.UJnlimitedusersacces')
                         }}</div>
                     </div>
                     <div class="content_t_l_btn_item_r">
@@ -51,9 +51,9 @@
             </div>
             <div class="content_t_r">
               <div class="content_t_r_price">${{price?Number(price).toFixed(2):''}}</div>
-              <div class="content_t_r_btn" @click="handleDemand">Request Sample</div>
-              <div class="content_t_r_btn" @click="handleDemand">Buy Now</div>
-              <div class="content_t_r_btn black" @click="exportToPdf()">Download Sample</div>
+              <div class="content_t_r_btn" @click="handleDemand">{{$t('report.sample')}}</div>
+              <div class="content_t_r_btn" @click="handleDemand">{{$t('report.BuyNow')}}</div>
+              <div class="content_t_r_btn black" @click="exportToPdf()">{{$t('report.DownloadSample')}}</div>
             </div>
           </div>
         </div>
@@ -63,9 +63,9 @@
           <div class="content_b_l_clause">
             <img src="/assets/images/report/img3.png" alt="">
             <div>
-              <div class="content_b_l_title">Important Clause:</div>
-              <div class="content_b_l_text">Recently, our company has discovered that some websites have plagiarized, quoted and modified our original report catalog without authorization, and sold reports under our brand, which has seriously infringed our interests. Therefore, our company recommends that you contact the relevant phone number, email address or leave a message to purchase the report to prevent being deceived.</div>
-              <div class="content_b_l_tag">*All report contents displayed on this website are original to DRIVEINTEL, and our company has the sole copyright. Any modification, reprinting or quotingin any form is prohibited without our prior written permission. Otherwise, our company reserves the right to pursue legal responsibility.</div>
+              <div class="content_b_l_title">{{$t('report.statement')}}:</div>
+              <div class="content_b_l_text">{{$t('report.Recently')}}</div>
+              <div class="content_b_l_tag">{{$t('report.allReport')}}</div>
             </div>
           </div>
           <div id="content-to-export">
@@ -97,7 +97,7 @@
         </div>
         <div class="content_b_r">
           <img class="content_b_r_img" src="/assets/images/report/img4.png" alt="">
-          <div class="content_b_r_jump">Jump To Content</div>
+          <div class="content_b_r_jump">{{$t('report.JumpToContent')}}</div>
           <div class="content_b_r_list">
             <template v-for="(v,i) in tabsTitleList" :key="i">
               <div class="content_b_r_list_item" :class="{active:v==tabsValue}" @click="tabsValue=v">
@@ -109,7 +109,7 @@
           <div class="content_b_r_list_related">
             <div class="content_b_r_list_related_title">
               <div></div>
-              Related Reports
+              {{$t('report.RelatedReports')}}
             </div>
             <div class="content_b_r_list_related_list">
               <template v-for="(item,i) in moreList" :key="item">

+ 13 - 13
pages/report-industries/index.vue

@@ -3,17 +3,17 @@
     <div class="top">
       <img src="@/assets/images/report/img1.png" alt="">
       <div>
-        <div class="top_title">Reports</div>
+        <div class="top_title">{{$t('common.navigate.report')}}</div>
         <div class="top_location">
           <span class="iconfont icon-weizhi"></span>
-          Current Location : Home <span class="iconfont icon-dkw_guanbi-"></span> <span>Reports</span>
+          {{$t('report.currentLocation')}} : {{$t('common.navigate.home')}} <span class="iconfont icon-dkw_guanbi-"></span> <span>{{$t('common.navigate.report')}}</span>
         </div>
       </div>
     </div>
     <div class="box">
       <div class="box_l">
         <div class="box_l_title">
-          <div>Industry Segment</div>
+          <div>{{$t('report.IndustrySegment')}}</div>
           <div>
             <span class="iconfont icon-shouqi1"></span>
           </div>
@@ -34,7 +34,7 @@
           </template>
         </div>
         <div class="box_l_title">
-          <div>Published</div>
+          <div>{{$t('report.Published')}}</div>
           <div>
             <span class="iconfont icon-shouqi1"></span>
           </div>
@@ -59,7 +59,7 @@
             <n-date-picker v-model:value="publishDateStr" clearable placeholder="Select Date" type="date" />
             <span> - </span>
             <n-date-picker v-model:value="publishDateEnd" clearable placeholder="Select Date" type="date" />
-            <div class="selBox_btn" @click="queryPublishDate">OK</div>
+            <div class="selBox_btn" @click="queryPublishDate">{{$t('report.OK')}}</div>
           </div>
         </div>
       </div>
@@ -72,11 +72,11 @@
                 <h2 class="box_r_list_title">{{ item.title }}</h2>
                 <div class="box_r_list_time">
                   <span class="iconfont  icon-suoshuhangye-01"></span>
-                  Industry:{{dealTypeShow(item.marketType)}}{{item.marketType}}
+                  {{$t('report.Industry')}}:{{dealTypeShow(item.marketType)}}{{item.marketType}}
                 </div>
                 <div class="box_r_list_time">
                   <span class="iconfont  icon-top_"></span>
-                  Report Format
+                  {{$t('report.reportFormat')}}
                   <span class="desc-icon">
                     <img src="@/assets/images/doc.png" />
                     <img src="@/assets/images/pdf.png" />
@@ -89,8 +89,8 @@
                 </div>
               </div>
               <div class="box_r_list_item_btn">
-                <div class="box_r_list_item_btn_l" @click.prevent="handleDemand(item, '1')">Request</div>
-                <div class="box_r_list_item_btn_r" @click.prevent="handleDemand(item, '2')">Buy Now</div>
+                <div class="box_r_list_item_btn_l" @click.prevent="handleDemand(item, '1')">{{$t('report.Request')}}</div>
+                <div class="box_r_list_item_btn_r" @click.prevent="handleDemand(item, '2')">{{$t('report.BuyNow')}}</div>
               </div>
             </a>
           </template>
@@ -98,13 +98,13 @@
         <div class="pageBox" v-if="pageList?.list.length>0">
           <n-pagination show-quick-jumper :page-count="pageList?.count" :on-update:page="changePage" :page-slot="6">
             <template #prev>
-              <div class="pageBox_btn">Previous</div>
+              <div class="pageBox_btn">{{$t('report.Previous')}}</div>
             </template>
             <template #next>
-              <div class="pageBox_btn">Next</div>
+              <div class="pageBox_btn">{{$t('report.Next')}}</div>
             </template>
             <template #goto>
-              <div class="pageBox_inp">Go To</div>
+              <div class="pageBox_inp">{{$t('report.GoTo')}}</div>
             </template>
           </n-pagination>
         </div>
@@ -117,7 +117,7 @@
         </div>
         <div class="load">
           <n-spin size="large">
-            <template #description>Loading...</template>
+            <template #description>{{$t('report.Loading')}}...</template>
           </n-spin>
         </div>
       </div>

+ 2 - 2
store/user.ts

@@ -5,8 +5,8 @@ export const useUserStore = defineStore("user", {
   state: () => ({
     userInfo: null,
     token: "",
-    // lang: 'zh-CN',
-    lang: "en-US",
+    lang: 'zh-CN',
+    // lang: "en-US",
     searchType: undefined,
     showLoginDialog: false,
   }),