uptada
This commit is contained in:
parent
bf38e76be0
commit
75967f3095
@ -271,11 +271,6 @@ export default {
|
|||||||
padding: 5px 20px;
|
padding: 5px 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.el-message--success {
|
|
||||||
/* border:1px dashed blue;
|
|
||||||
height: 45px; */
|
|
||||||
}
|
|
||||||
|
|
||||||
.el-table {
|
.el-table {
|
||||||
z-index: 0 !important;
|
z-index: 0 !important;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -1,7 +1,6 @@
|
|||||||
// src/utils/language.js
|
|
||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
|
|
||||||
// 创建一个事件总线用于组件通信
|
// 创建一个全局的事件总线用于组件通信
|
||||||
export const languageBus = new Vue()
|
export const languageBus = new Vue()
|
||||||
|
|
||||||
// 语言状态管理
|
// 语言状态管理
|
||||||
@ -12,10 +11,16 @@ export const languageStore = {
|
|||||||
|
|
||||||
setLanguage(lang) {
|
setLanguage(lang) {
|
||||||
if (lang === 'zh' || lang === 'en') {
|
if (lang === 'zh' || lang === 'en') {
|
||||||
|
console.log('languageStore: 设置语言为', lang)
|
||||||
this.state.language = lang
|
this.state.language = lang
|
||||||
localStorage.setItem('language', lang)
|
localStorage.setItem('language', lang)
|
||||||
// 触发语言改变事件
|
// 触发全局语言改变事件
|
||||||
languageBus.$emit('language-changed', lang)
|
languageBus.$emit('language-changed', lang)
|
||||||
|
|
||||||
|
// 确保所有组件都能收到变化,即使有些组件监听器设置较晚
|
||||||
|
setTimeout(() => {
|
||||||
|
languageBus.$emit('language-changed', lang)
|
||||||
|
}, 100)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
@ -27,10 +32,53 @@ export const languageStore = {
|
|||||||
const savedLanguage = localStorage.getItem('language')
|
const savedLanguage = localStorage.getItem('language')
|
||||||
if (savedLanguage && (savedLanguage === 'zh' || savedLanguage === 'en')) {
|
if (savedLanguage && (savedLanguage === 'zh' || savedLanguage === 'en')) {
|
||||||
this.state.language = savedLanguage
|
this.state.language = savedLanguage
|
||||||
|
} else {
|
||||||
|
// 如果没有保存的语言设置,使用默认值
|
||||||
|
this.state.language = 'zh'
|
||||||
|
localStorage.setItem('language', 'zh')
|
||||||
}
|
}
|
||||||
|
console.log('languageStore: 初始化完成,当前语言:', this.state.language)
|
||||||
return this.state.language
|
return this.state.language
|
||||||
|
},
|
||||||
|
|
||||||
|
// 调试方法
|
||||||
|
debug() {
|
||||||
|
console.log('languageStore 调试信息:')
|
||||||
|
console.log('- 当前语言:', this.state.language)
|
||||||
|
console.log('- localStorage:', localStorage.getItem('language'))
|
||||||
|
console.log('- 事件监听器数量:', languageBus._events['language-changed'] ? languageBus._events['language-changed'].length : 0)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// 初始化
|
// 在应用启动时初始化
|
||||||
languageStore.init()
|
languageStore.init()
|
||||||
|
|
||||||
|
// 添加一个全局状态检查方法
|
||||||
|
export const checkLanguageState = () => {
|
||||||
|
console.log('=== 全局语言状态检查 ===');
|
||||||
|
console.log('languageStore:', languageStore.getLanguage());
|
||||||
|
console.log('localStorage:', localStorage.getItem('language'));
|
||||||
|
|
||||||
|
// 检查所有可能存储语言状态的地方
|
||||||
|
const stores = [
|
||||||
|
{ name: 'languageStore', value: languageStore.getLanguage() },
|
||||||
|
{ name: 'localStorage', value: localStorage.getItem('language') }
|
||||||
|
];
|
||||||
|
|
||||||
|
// 找出不一致的状态
|
||||||
|
const uniqueValues = [...new Set(stores.map(store => store.value))];
|
||||||
|
if (uniqueValues.length > 1) {
|
||||||
|
console.warn('语言状态不一致!', stores);
|
||||||
|
// 自动修复:以 languageStore 为准
|
||||||
|
const correctLang = languageStore.getLanguage();
|
||||||
|
localStorage.setItem('language', correctLang);
|
||||||
|
console.log('已自动修复语言状态不一致问题');
|
||||||
|
} else {
|
||||||
|
console.log('语言状态一致:', uniqueValues[0]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 在应用启动时检查状态一致性
|
||||||
|
setTimeout(() => {
|
||||||
|
checkLanguageState();
|
||||||
|
}, 1000);
|
||||||
|
|||||||
@ -2,13 +2,11 @@
|
|||||||
<div style="width: 100%;">
|
<div style="width: 100%;">
|
||||||
<div class="banner">
|
<div class="banner">
|
||||||
<span v-if="JSON.stringify(logoInfoNew)!=='{}'" style="font-size: 38px">
|
<span v-if="JSON.stringify(logoInfoNew)!=='{}'" style="font-size: 38px">
|
||||||
{{ logoInfoNew.home.bannerTitle }} <span style="color: #0e0b0b">全球领先的AI服务运营商</span>
|
{{ logoInfoNew.home.bannerTitle }} <span style="color: #0e0b0b">{{ translations[language].slogan }}</span>
|
||||||
</span>
|
</span>
|
||||||
<!-- <span style="color: #0e0b0b">Company Introduction</span>-->
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="mainBox" style="padding-top: 35px">
|
<div class="mainBox" style="padding-top: 35px">
|
||||||
<!-- <div style="text-align: center;font-weight: bold;font-size: 26px;margin: 50px 0 15px;">公司介绍</div>-->
|
|
||||||
<div class="inBox">
|
<div class="inBox">
|
||||||
<div class="leftBox">
|
<div class="leftBox">
|
||||||
<img v-if="JSON.stringify(logoInfoNew)!=='{}'"
|
<img v-if="JSON.stringify(logoInfoNew)!=='{}'"
|
||||||
@ -16,147 +14,113 @@
|
|||||||
alt="">
|
alt="">
|
||||||
</div>
|
</div>
|
||||||
<div v-if="JSON.stringify(logoInfoNew)!=='{}'" class="rightBox">
|
<div v-if="JSON.stringify(logoInfoNew)!=='{}'" class="rightBox">
|
||||||
|
|
||||||
<p v-for="(i,index) in logoInfoNew.about.content" :key="index">
|
<p v-for="(i,index) in logoInfoNew.about.content" :key="index">
|
||||||
{{ i }}
|
{{ i }}
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="zizhi">
|
<div class="zizhi">
|
||||||
<div style="width: 1400px;">
|
<div style="width: 1400px;">
|
||||||
<div
|
<div style="text-align:center;font-size: 26px;font-weight: bold;margin: 55px 0;width: 100%;margin-bottom: 50px">
|
||||||
style="text-align:center;font-size: 26px;font-weight: bold;margin: 55px 0;width: 100%;margin-bottom: 50px ">
|
{{ translations[language].qualifications }}
|
||||||
公司资质
|
|
||||||
</div>
|
</div>
|
||||||
<LogoTwo></LogoTwo>
|
<LogoTwo></LogoTwo>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="why">
|
<div class="why">
|
||||||
<!-- <div style="font-size: 26px;font-weight: bold;margin: 55px 0">-->
|
|
||||||
<!-- 使命、愿景、价值观-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<ul class="whyUl">
|
<ul class="whyUl">
|
||||||
<li>
|
<li>
|
||||||
<span class="icon"><img
|
<span class="icon"><img src="./img/1.png" alt=""></span>
|
||||||
src="./img/1.png"
|
<div class="title">{{ translations[language].mission }}</div>
|
||||||
alt=""></span>
|
|
||||||
<div class="title">使命</div>
|
|
||||||
<div class="description">
|
<div class="description">
|
||||||
<span
|
<span style="color:#222F60;font-weight: bold;margin-bottom: 10px;display: flex;justify-content: center;align-items: center">
|
||||||
style="color:#222F60;font-weight: bold;margin-bottom: 10px;display: flex;justify-content: center;align-items: center">让AI无处不在,让智能如此简单</span>
|
{{ translations[language].missionContent }}
|
||||||
<!-- 公司将通过生态合作形式构建强大的算力基础设施,让算力能够随时随地为客户所用。同时,简化人工智能的应用流程,降低使用门槛,使智能技术能够更加便捷地服务于各行各业。-->
|
</span>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<span class="icon"><img
|
<span class="icon"><img src="./img/2.png" alt=""></span>
|
||||||
src="./img/2.png"
|
<div class="title">{{ translations[language].vision }}</div>
|
||||||
alt=""></span>
|
|
||||||
<div class="title">愿景</div>
|
|
||||||
<div class="description">
|
<div class="description">
|
||||||
<span
|
<span style="color:#222F60;font-weight: bold;margin-bottom: 10px;display: flex;justify-content: center;align-items: center">
|
||||||
style="color:#222F60;font-weight: bold;margin-bottom: 10px;display: flex;justify-content: center;align-items: center">全球领先的AI服务运营商</span>
|
{{ translations[language].visionContent }}
|
||||||
<!-- 成为全球领先的人工智能服务运营商,公司不满足于国内外AI发展和服务现状,追求在人工智能领域持续创新和发展。公司将不断探索新的技术和商业模式,引领AI智能服务的发展潮流。-->
|
</span>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<span class="icon"><img
|
<span class="icon"><img src="./img/3.png" alt=""></span>
|
||||||
src="./img/3.png"
|
<div class="title">{{ translations[language].values }}</div>
|
||||||
alt=""></span>
|
|
||||||
<div class="title">价值观</div>
|
|
||||||
<div class="description">
|
<div class="description">
|
||||||
<span
|
<span style="color:#222F60;font-weight: bold;margin-bottom: 10px;display: flex;justify-content: center;align-items: center">
|
||||||
style="color:#222F60;font-weight: bold;margin-bottom: 10px;display: flex;justify-content: center;align-items: center">卓越、开放、创新</span>
|
{{ translations[language].valuesContent }}
|
||||||
<!-- “卓越”价值观意味着精益求精,永争第一。“开放”价值观鼓励公司与外部合作伙伴进行广泛的合作。-->
|
</span>
|
||||||
<!-- “创新”则要求公司不断探索新的技术和业务模式,推动产品和服务的升级。-->
|
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="ad">
|
<div class="ad">
|
||||||
<div
|
<div style="text-align:center;font-size: 26px;font-weight: bold;margin: 55px 0;width: 100%;margin-bottom: 50px">
|
||||||
style="text-align:center;font-size: 26px;font-weight: bold;margin: 55px 0;width: 100%;margin-bottom: 50px ">
|
{{ translations[language].platformAdvantages }}
|
||||||
平台优势
|
|
||||||
</div>
|
</div>
|
||||||
<ul class="adUl">
|
<ul class="adUl">
|
||||||
<li>
|
<li>
|
||||||
<div class="iconBox">
|
<div class="iconBox">
|
||||||
<img
|
<img src="./img/5.png" alt="">
|
||||||
src="./img/5.png"
|
|
||||||
alt="">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<span>精准定位</span>
|
<span>{{ translations[language].advantage1Title }}</span>
|
||||||
<span
|
<span class="description">{{ translations[language].advantage1Desc }}</span>
|
||||||
class="description">专注于为各行业提供专业、高效的人工智能解决方案,助力企业智能化转型。</span>
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<div class="iconBox">
|
<div class="iconBox">
|
||||||
<img
|
<img src="./img/6.png" alt="">
|
||||||
src="./img/6.png"
|
|
||||||
alt="">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<span>技术服务</span>
|
<span>{{ translations[language].advantage2Title }}</span>
|
||||||
<span
|
<span class="description">{{ translations[language].advantage2Desc }}</span>
|
||||||
class="description">提供人工智能相关的技术服务,为企业解决复杂的技术难题。</span>
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<div class="iconBox">
|
<div class="iconBox">
|
||||||
<img
|
<img src="./img/7.png" alt="">
|
||||||
src="./img/7.png"
|
|
||||||
alt="">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<span>产品定制</span>
|
<span>{{ translations[language].advantage3Title }}</span>
|
||||||
<span
|
<span class="description">{{ translations[language].advantage3Desc }}</span>
|
||||||
class="description">根据企业的特定需求,定制开发人工智能产品,满足不同场景的应用需求。</span>
|
|
||||||
</div>
|
|
||||||
</li>
|
|
||||||
|
|
||||||
<li>
|
|
||||||
<div class="iconBox">
|
|
||||||
<img
|
|
||||||
src="./img/4.png"
|
|
||||||
alt="">
|
|
||||||
</div>
|
|
||||||
<div class="content">
|
|
||||||
<span>产业赋能 </span>
|
|
||||||
<span
|
|
||||||
class="description">通过人工智能技术,为传统产业赋能,提升产业的竞争力和创新能力。</span>
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<div class="iconBox">
|
<div class="iconBox">
|
||||||
<img
|
<img src="./img/4.png" alt="">
|
||||||
src="./img/2.png"
|
|
||||||
alt="">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<span>一站式、本地化服务</span>
|
<span>{{ translations[language].advantage4Title }}</span>
|
||||||
<span
|
<span class="description">{{ translations[language].advantage4Desc }}</span>
|
||||||
class="description">从售前、售中到售后提供一站式全方位服务</span>
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<div class="iconBox">
|
<div class="iconBox">
|
||||||
<img
|
<img src="./img/2.png" alt="">
|
||||||
src="./img/8.png"
|
|
||||||
alt="">
|
|
||||||
</div>
|
</div>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<span>提供AI基础设施与模型服务</span>
|
<span>{{ translations[language].advantage5Title }}</span>
|
||||||
<span
|
<span class="description">{{ translations[language].advantage5Desc }}</span>
|
||||||
class="description">提供整体底层技术架构和系统支持及模型服务</span>
|
</div>
|
||||||
|
</li>
|
||||||
|
<li>
|
||||||
|
<div class="iconBox">
|
||||||
|
<img src="./img/8.png" alt="">
|
||||||
|
</div>
|
||||||
|
<div class="content">
|
||||||
|
<span>{{ translations[language].advantage6Title }}</span>
|
||||||
|
<span class="description">{{ translations[language].advantage6Desc }}</span>
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -166,10 +130,76 @@
|
|||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
import LogoTwo from "@/views/homePage/mainPage/logoG/logoTwo.vue";
|
import LogoTwo from "@/views/homePage/mainPage/logoG/logoTwo.vue";
|
||||||
import {mapGetters, mapState} from "vuex";
|
import {mapGetters, mapState} from "vuex";
|
||||||
|
// 导入语言管理
|
||||||
|
import { languageStore, languageBus } from '@/utils/language'
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
name: "aboubt",
|
name: "about",
|
||||||
components: {LogoTwo},
|
components: {LogoTwo},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
language: 'zh',
|
||||||
|
languageChangedHandler: null,
|
||||||
|
translations: {
|
||||||
|
zh: {
|
||||||
|
slogan: '全球领先的AI服务运营商',
|
||||||
|
qualifications: '公司资质',
|
||||||
|
mission: '使命',
|
||||||
|
missionContent: '让AI无处不在,让智能如此简单',
|
||||||
|
vision: '愿景',
|
||||||
|
visionContent: '全球领先的AI服务运营商',
|
||||||
|
values: '价值观',
|
||||||
|
valuesContent: '卓越、开放、创新',
|
||||||
|
platformAdvantages: '平台优势',
|
||||||
|
advantage1Title: '精准定位',
|
||||||
|
advantage1Desc: '专注于为各行业提供专业、高效的人工智能解决方案,助力企业智能化转型。',
|
||||||
|
advantage2Title: '技术服务',
|
||||||
|
advantage2Desc: '提供人工智能相关的技术服务,为企业解决复杂的技术难题。',
|
||||||
|
advantage3Title: '产品定制',
|
||||||
|
advantage3Desc: '根据企业的特定需求,定制开发人工智能产品,满足不同场景的应用需求。',
|
||||||
|
advantage4Title: '产业赋能',
|
||||||
|
advantage4Desc: '通过人工智能技术,为传统产业赋能,提升产业的竞争力和创新能力。',
|
||||||
|
advantage5Title: '一站式、本地化服务',
|
||||||
|
advantage5Desc: '从售前、售中到售后提供一站式全方位服务',
|
||||||
|
advantage6Title: '提供AI基础设施与模型服务',
|
||||||
|
advantage6Desc: '提供整体底层技术架构和系统支持及模型服务'
|
||||||
|
},
|
||||||
|
en: {
|
||||||
|
slogan: 'Leading AI Service Operator Worldwide',
|
||||||
|
qualifications: 'Company Qualifications',
|
||||||
|
mission: 'Mission',
|
||||||
|
missionContent: 'Make AI ubiquitous and intelligence so simple',
|
||||||
|
vision: 'Vision',
|
||||||
|
visionContent: 'Global Leading AI Service Operator',
|
||||||
|
values: 'Values',
|
||||||
|
valuesContent: 'Excellence, Openness, Innovation',
|
||||||
|
platformAdvantages: 'Platform Advantages',
|
||||||
|
advantage1Title: 'Precise Positioning',
|
||||||
|
advantage1Desc: 'Focus on providing professional and efficient AI solutions for various industries to help enterprises achieve intelligent transformation.',
|
||||||
|
advantage2Title: 'Technical Services',
|
||||||
|
advantage2Desc: 'Provide AI-related technical services to help enterprises solve complex technical problems.',
|
||||||
|
advantage3Title: 'Product Customization',
|
||||||
|
advantage3Desc: 'Customize AI products according to specific enterprise needs to meet application requirements in different scenarios.',
|
||||||
|
advantage4Title: 'Industry Empowerment',
|
||||||
|
advantage4Desc: 'Empower traditional industries through AI technology, enhancing industry competitiveness and innovation capability.',
|
||||||
|
advantage5Title: 'One-stop, Localized Service',
|
||||||
|
advantage5Desc: 'Provide comprehensive one-stop services from pre-sales to after-sales',
|
||||||
|
advantage6Title: 'AI Infrastructure & Model Services',
|
||||||
|
advantage6Desc: 'Provide overall underlying technical architecture, system support, and model services'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
// 修复:确保从共享状态获取当前语言
|
||||||
|
this.initLanguage()
|
||||||
|
},
|
||||||
|
beforeDestroy() {
|
||||||
|
// 移除事件监听
|
||||||
|
if (this.languageChangedHandler) {
|
||||||
|
languageBus.$off('language-changed', this.languageChangedHandler)
|
||||||
|
}
|
||||||
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters(["sidebar", "avatar", "device"]),
|
...mapGetters(["sidebar", "avatar", "device"]),
|
||||||
...mapState({
|
...mapState({
|
||||||
@ -180,8 +210,6 @@ export default Vue.extend({
|
|||||||
logoutUrl: state => state.login.logoutUrl,
|
logoutUrl: state => state.login.logoutUrl,
|
||||||
loginState: state => state.login.loginState,
|
loginState: state => state.login.loginState,
|
||||||
logoInfoNew: state => state.product.logoInfoNew,
|
logoInfoNew: state => state.product.logoInfoNew,
|
||||||
|
|
||||||
|
|
||||||
}),
|
}),
|
||||||
showRegisterButton() {
|
showRegisterButton() {
|
||||||
const orgType = window.sessionStorage.getItem('org_type');
|
const orgType = window.sessionStorage.getItem('org_type');
|
||||||
@ -192,12 +220,27 @@ export default Vue.extend({
|
|||||||
username() {
|
username() {
|
||||||
return sessionStorage.getItem('username') || '';
|
return sessionStorage.getItem('username') || '';
|
||||||
},
|
},
|
||||||
|
|
||||||
},
|
},
|
||||||
|
methods: {
|
||||||
|
// 初始化语言状态
|
||||||
|
initLanguage() {
|
||||||
|
// 直接从store获取当前语言,确保一致性
|
||||||
|
this.language = languageStore.getLanguage()
|
||||||
|
console.log('about页面初始化语言:', this.language)
|
||||||
|
|
||||||
|
// 保存事件处理函数的引用,以便正确移除
|
||||||
|
this.languageChangedHandler = (lang) => {
|
||||||
|
console.log('about页面接收到语言变化:', lang)
|
||||||
|
this.language = lang
|
||||||
|
}
|
||||||
|
|
||||||
|
// 监听语言变化事件
|
||||||
|
languageBus.$on('language-changed', this.languageChangedHandler)
|
||||||
|
}
|
||||||
|
}
|
||||||
})
|
})
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="scss">
|
||||||
.banner {
|
.banner {
|
||||||
background: url("./img/banner.png") no-repeat center center;
|
background: url("./img/banner.png") no-repeat center center;
|
||||||
@ -208,13 +251,12 @@ export default Vue.extend({
|
|||||||
height: 250px;
|
height: 250px;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
//color: white;
|
|
||||||
span {
|
span {
|
||||||
background: linear-gradient(to right, #275AFF, #2EBDFA); /* 渐变方向颜色 */
|
background: linear-gradient(to right, #275AFF, #2EBDFA);
|
||||||
-webkit-background-clip: text; /* 关键属性:裁剪背景到文字 */
|
-webkit-background-clip: text;
|
||||||
background-clip: text;
|
background-clip: text;
|
||||||
color: transparent; /* 文字颜色透明 */
|
color: transparent;
|
||||||
display: inline-block; /* 确保渐变生效 */
|
display: inline-block;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -246,8 +288,6 @@ export default Vue.extend({
|
|||||||
line-height: 2;
|
line-height: 2;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.why {
|
.why {
|
||||||
@ -289,12 +329,10 @@ export default Vue.extend({
|
|||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.description {
|
.description {
|
||||||
color: #999;
|
color: #999;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
line-height: 2;
|
line-height: 2;
|
||||||
//margin-top: 15px;
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -313,7 +351,6 @@ export default Vue.extend({
|
|||||||
flex-wrap: wrap;
|
flex-wrap: wrap;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
|
|
||||||
|
|
||||||
li {
|
li {
|
||||||
margin-bottom: 45px;
|
margin-bottom: 45px;
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -323,7 +360,6 @@ export default Vue.extend({
|
|||||||
max-width: 30%;
|
max-width: 30%;
|
||||||
padding-right: 15px;
|
padding-right: 15px;
|
||||||
|
|
||||||
|
|
||||||
.content {
|
.content {
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|||||||
@ -9,17 +9,17 @@
|
|||||||
</div>
|
</div>
|
||||||
|
|
||||||
<ul class="titleWord">
|
<ul class="titleWord">
|
||||||
<li>首页</li>
|
<li>{{ translations[language].home }}</li>
|
||||||
<li @click="goOtherPage('product')">产品服务</li>
|
<li @click="goOtherPage('product')">{{ translations[language].products }}</li>
|
||||||
<li @click="goOtherPage('solve')">解决方案</li>
|
<li @click="goOtherPage('solve')">{{ translations[language].solutions }}</li>
|
||||||
<li @click="goOtherPage('service')">服务中心</li>
|
<li @click="goOtherPage('service')">{{ translations[language].serviceCenter }}</li>
|
||||||
<li @click="goOtherPage('news')">新闻资讯</li>
|
<li @click="goOtherPage('news')">{{ translations[language].news }}</li>
|
||||||
<li @click="goOtherPage('aboutUs')">关于我们</li>
|
<li @click="goOtherPage('aboutUs')">{{ translations[language].aboutUs }}</li>
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<div class="right-style">
|
<div class="right-style">
|
||||||
<el-button @click="login" class="loginBtn-style" style="color: white">登录</el-button>
|
<el-button @click="login" class="loginBtn-style" style="color: white">{{ translations[language].login }}</el-button>
|
||||||
<el-button @click="register" class="register-style">注册</el-button>
|
<el-button @click="register" class="register-style">{{ translations[language].register }}</el-button>
|
||||||
</div>
|
</div>
|
||||||
</header>
|
</header>
|
||||||
|
|
||||||
@ -32,9 +32,6 @@
|
|||||||
<el-carousel-item style="height: 50vh;" class="banner-item">
|
<el-carousel-item style="height: 50vh;" class="banner-item">
|
||||||
<img src="../../assets/kyy/temporaryPic/bann2.png">
|
<img src="../../assets/kyy/temporaryPic/bann2.png">
|
||||||
</el-carousel-item>
|
</el-carousel-item>
|
||||||
<!-- <el-carousel-item style="height: 420px;" class="banner-item">-->
|
|
||||||
<!-- <img src="../../assets/kyy/temporaryPic/banew.png">-->
|
|
||||||
<!-- </el-carousel-item>-->
|
|
||||||
<el-carousel-item style="height: 50vh;" class="banner-item">
|
<el-carousel-item style="height: 50vh;" class="banner-item">
|
||||||
<img src="../../assets/kyy/temporaryPic/banner5.jpg">
|
<img src="../../assets/kyy/temporaryPic/banner5.jpg">
|
||||||
</el-carousel-item>
|
</el-carousel-item>
|
||||||
@ -46,144 +43,67 @@
|
|||||||
<li class="content-footer-item" style="display: flex;flex-direction:row;justify-content: center;align-items: center">
|
<li class="content-footer-item" style="display: flex;flex-direction:row;justify-content: center;align-items: center">
|
||||||
<img class="icon-footer" src="../../assets/kyy/Icon-kexuejishu-.svg" alt="">
|
<img class="icon-footer" src="../../assets/kyy/Icon-kexuejishu-.svg" alt="">
|
||||||
<div style="display: flex;flex-direction: column;justify-content: center;align-items: center">
|
<div style="display: flex;flex-direction: column;justify-content: center;align-items: center">
|
||||||
<span class="footer-title" style="cursor: pointer" @click="goProduct('http://tmpweb.opencomputing.cn/col.jsp?id=146')">公有云</span>
|
<span class="footer-title" style="cursor: pointer" @click="goProduct('http://tmpweb.opencomputing.cn/col.jsp?id=146')">{{ translations[language].publicCloud }}</span>
|
||||||
<!-- <span class="footer-content">算力互联网络和算力调度核心技术</span>-->
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</li>
|
</li>
|
||||||
<li class="content-footer-item" style="display: flex;flex-direction:row;justify-content: center;align-items: center">
|
<li class="content-footer-item" style="display: flex;flex-direction:row;justify-content: center;align-items: center">
|
||||||
<img class="icon-footer" src="../../assets/kyy/Icon-_khgx.svg" alt="">
|
<img class="icon-footer" src="../../assets/kyy/Icon-_khgx.svg" alt="">
|
||||||
<div style="display: flex;flex-direction: column;justify-content: center;align-items: center">
|
<div style="display: flex;flex-direction: column;justify-content: center;align-items: center">
|
||||||
<span class="footer-title" style="cursor: pointer" @click="goProduct('http://tmpweb.opencomputing.cn/col.jsp?id=138')">超算</span>
|
<span class="footer-title" style="cursor: pointer" @click="goProduct('http://tmpweb.opencomputing.cn/col.jsp?id=138')">{{ translations[language].superComputing }}</span>
|
||||||
<!-- <span class="footer-content" >中立的全国性网络资源算力中心资源</span>-->
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="content-footer-item" style="display: flex;flex-direction:row;justify-content: center;align-items: center">
|
<li class="content-footer-item" style="display: flex;flex-direction:row;justify-content: center;align-items: center">
|
||||||
<img class="icon-footer" src="../../assets/kyy/Icon-a-01changjing.svg" alt="">
|
<img class="icon-footer" src="../../assets/kyy/Icon-a-01changjing.svg" alt="">
|
||||||
<div style="display: flex;flex-direction: column;justify-content: center;align-items: center">
|
<div style="display: flex;flex-direction: column;justify-content: center;align-items: center">
|
||||||
<span class="footer-title" style="cursor: pointer" @click="goProduct('http://tmpweb.opencomputing.cn/col.jsp?id=139')">智算</span>
|
<span class="footer-title" style="cursor: pointer" @click="goProduct('http://tmpweb.opencomputing.cn/col.jsp?id=139')">{{ translations[language].intelligentComputing }}</span>
|
||||||
<!-- <span class="footer-content">面向行业<br/>-->
|
|
||||||
<!--面向应用</span>-->
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
<li class="content-footer-item" style="display: flex;flex-direction:row;justify-content: center;align-items: center">
|
<li class="content-footer-item" style="display: flex;flex-direction:row;justify-content: center;align-items: center">
|
||||||
<img class="icon-footer" src="../../assets/kyy/Icon-yunyingzhongxin.svg" alt="">
|
<img class="icon-footer" src="../../assets/kyy/Icon-yunyingzhongxin.svg" alt="">
|
||||||
<div style="display: flex;flex-direction: column;justify-content: center;align-items: center">
|
<div style="display: flex;flex-direction: column;justify-content: center;align-items: center">
|
||||||
<span class="footer-title" style="cursor: pointer" @click="goProduct('http://tmpweb.opencomputing.cn/col.jsp?id=140')">网络</span>
|
<span class="footer-title" style="cursor: pointer" @click="goProduct('http://tmpweb.opencomputing.cn/col.jsp?id=140')">{{ translations[language].network }}</span>
|
||||||
<!-- <span class="footer-content">多年运营服务经验 <br/>市场客户沉淀</span>-->
|
|
||||||
</div>
|
</div>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<!-- 核心业务-->
|
<!-- 核心业务-->
|
||||||
<div class="business">
|
<div class="business">
|
||||||
<span class="business-title" style="margin-bottom: 15px;margin-top: 85px">核心业务</span>
|
<span class="business-title" style="margin-bottom: 15px;margin-top: 85px">{{ translations[language].coreBusiness }}</span>
|
||||||
<span class="business-content" style="margin-bottom: 15px">提供领先、可靠、多场景的应用解决方案安全、稳定、确定</span>
|
<span class="business-content" style="margin-bottom: 15px">{{ translations[language].coreBusinessDesc }}</span>
|
||||||
<!-- 四个li-->
|
<!-- 四个li-->
|
||||||
<ul style="display: flex;justify-content: center">
|
<ul style="display: flex;justify-content: center">
|
||||||
<li class="content-footer-item">
|
<li class="content-footer-item">
|
||||||
<img style="width: 200px;height: 200px;" src="../../assets/kyy/temporaryPic/w1.png" alt="">
|
<img style="width: 200px;height: 200px;" src="../../assets/kyy/temporaryPic/w1.png" alt="">
|
||||||
<span class="footer-title">智算中心</span>
|
<span class="footer-title">{{ translations[language].business1Title }}</span>
|
||||||
<span class="footer-content">智算中心咨询
|
<span class="footer-content">{{ translations[language].business1Desc }}</span>
|
||||||
/规划/建设/运营/运维</span>
|
|
||||||
</li>
|
</li>
|
||||||
<li class="content-footer-item">
|
<li class="content-footer-item">
|
||||||
<img style="width: 200px;height: 200px;" src="../../assets/kyy/temporaryPic/w2.png" alt="">
|
<img style="width: 200px;height: 200px;" src="../../assets/kyy/temporaryPic/w2.png" alt="">
|
||||||
<span class="footer-title">算力网络</span>
|
<span class="footer-title">{{ translations[language].business2Title }}</span>
|
||||||
<span class="footer-content">云互联、超算互联、智算互联</span>
|
<span class="footer-content">{{ translations[language].business2Desc }}</span>
|
||||||
</li>
|
</li>
|
||||||
<li class="content-footer-item">
|
<li class="content-footer-item">
|
||||||
<img style="width: 200px;height: 200px;" src="../../assets/kyy/temporaryPic/w3.png" alt="">
|
<img style="width: 200px;height: 200px;" src="../../assets/kyy/temporaryPic/w3.png" alt="">
|
||||||
<span class="footer-title">算力服务</span>
|
<span class="footer-title">{{ translations[language].business3Title }}</span>
|
||||||
<span class="footer-content">融合云、HPC、AI算力、信创</span>
|
<span class="footer-content">{{ translations[language].business3Desc }}</span>
|
||||||
</li>
|
</li>
|
||||||
<li class="content-footer-item">
|
<li class="content-footer-item">
|
||||||
<img style="width: 200px;height: 200px;" src="../../assets/kyy/temporaryPic/w4.png" alt="">
|
<img style="width: 200px;height: 200px;" src="../../assets/kyy/temporaryPic/w4.png" alt="">
|
||||||
<span class="footer-title">应用解决方案</span>
|
<span class="footer-title">{{ translations[language].business4Title }}</span>
|
||||||
<span class="footer-content">企业多场景云服务、高校科学计算、大模型架构及应用</span>
|
<span class="footer-content">{{ translations[language].business4Desc }}</span>
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
<span class="business-title" style="margin-top: 50px;margin-bottom: 15px">深入业务场景的算网解决方案</span>
|
<span class="business-title" style="margin-top: 50px;margin-bottom: 15px">{{ translations[language].solutionTitle }}</span>
|
||||||
<span class="business-content" style="margin-bottom: 25px">以高水平算网调度解决方案助力各行业高质量发展</span>
|
<span class="business-content" style="margin-bottom: 25px">{{ translations[language].solutionDesc }}</span>
|
||||||
<!-- 图片-->
|
<!-- 图片-->
|
||||||
<div>
|
<div>
|
||||||
<img class="business-pic" style="width: 100%;height: 300px;" src="../../assets/kyy/深入方案bg.png">
|
<img class="business-pic" style="width: 100%;height: 300px;" src="../../assets/kyy/深入方案bg.png">
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<!-- 全国高校算力网络-->
|
|
||||||
<!-- <div class="shcool" style="margin-bottom: 50px;margin-top: 55px">-->
|
|
||||||
<!-- <span class="business-title" style="margin-bottom: 15px">全国算力网络</span>-->
|
|
||||||
<!-- <span class="business-content" style="margin-bottom: 15px">算力统一管理 算网一体服务</span>-->
|
|
||||||
<!-- <div class="shcool-main">-->
|
|
||||||
<!-- <img alt="" src="../../assets/kyy/Map.png">-->
|
|
||||||
<!-- 1di -->
|
|
||||||
|
|
||||||
<!-- 新闻板块-->
|
|
||||||
<!-- <div class="news-block">-->
|
|
||||||
<!-- <span class="title-news">创新论坛</span>-->
|
|
||||||
<!-- <p class="news-content"> 2023全国高校算力网络创新论坛聚焦高校数字化转型背景下针对高校科研领域的新要求,分享算力网络最新的前沿技术,共话算力网络技术与服务企业产业布局,研讨高校科研需求与算力技术的供应。</p>-->
|
|
||||||
<!-- <div style="display: flex;justify-content: center;align-items: center">-->
|
|
||||||
<!-- <div class="pic-news">-->
|
|
||||||
<!-- <img src="../../assets/kyy/temporaryPic/640(1).jpg" alt="">-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- <div class="pic-news">-->
|
|
||||||
<!-- <img src="../../assets/kyy/temporaryPic/640.jpg" alt="">-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
|
|
||||||
<!-- 1di -->
|
|
||||||
<!-- <div class="left-content">-->
|
|
||||||
|
|
||||||
<!-- <div class="top-school">-->
|
|
||||||
<!-- <div class="c-one">-->
|
|
||||||
<!-- <span class="school-title">二级ROADM节点</span>-->
|
|
||||||
<!-- <span class="school-school">106-->
|
|
||||||
<!-- <span class="school-title">个</span>-->
|
|
||||||
<!-- </span>-->
|
|
||||||
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- <div class="c-two">-->
|
|
||||||
<!-- <span class="school-title">核心节点</span>-->
|
|
||||||
<!-- <span class="school-school">106-->
|
|
||||||
<!-- <span class="school-title">个</span></span>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- <div class="c-thr">-->
|
|
||||||
<!-- <span class="school-title" style="font-size: 14px">OA节点</span>-->
|
|
||||||
<!-- <span class="school-school" style="font-size: 24px">306-->
|
|
||||||
<!-- <span class="school-title">个</span></span>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- <span class="tip-word">-->
|
|
||||||
<!-- 局部配套-->
|
|
||||||
<!-- </span>-->
|
|
||||||
|
|
||||||
<!-- <!– 系统组成–>-->
|
|
||||||
<!-- <div class="main-content">-->
|
|
||||||
<!-- <span class="main-title"> 系统组成</span>-->
|
|
||||||
<!-- <div class="shcool-dscribtion">-->
|
|
||||||
<!-- <ul>-->
|
|
||||||
<!-- <li>· 华为OSN9800</li>-->
|
|
||||||
<!-- <li>· 40x100G ROADM平台</li>-->
|
|
||||||
<!-- <li>· 40x400G演进能力</li>-->
|
|
||||||
<!-- </ul>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
|
|
||||||
<!--中国地图-->
|
|
||||||
<!-- <div class="wrapper">-->
|
|
||||||
<!-- <div class="map-container" ref="myEchart"></div>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
|
|
||||||
<!-- 企业资讯-->
|
<!-- 企业资讯-->
|
||||||
<div class="business" style="margin-top: 100px">
|
<div class="business" style="margin-top: 100px">
|
||||||
<span class="business-title" style="margin-top: 50px;margin-bottom: 15px">企业资讯</span>
|
<span class="business-title" style="margin-top: 50px;margin-bottom: 15px">{{ translations[language].enterpriseNews }}</span>
|
||||||
<div>
|
<div>
|
||||||
<img @click="goNewsPage" style="height: 800px;cursor: pointer" class="business-pic" src="../../assets/kyy/temporaryPic/ff.png">
|
<img @click="goNewsPage" style="height: 800px;cursor: pointer" class="business-pic" src="../../assets/kyy/temporaryPic/ff.png">
|
||||||
</div>
|
</div>
|
||||||
@ -191,8 +111,8 @@
|
|||||||
|
|
||||||
<!-- 核心业务-->
|
<!-- 核心业务-->
|
||||||
<div class="business" style="height: 550px;">
|
<div class="business" style="height: 550px;">
|
||||||
<span class="business-title" style="margin-bottom: 15px;margin-top: 35px">全国高校算力网络创新论坛</span>
|
<span class="business-title" style="margin-bottom: 15px;margin-top: 35px">{{ translations[language].forumTitle }}</span>
|
||||||
<span class="business-content" style="width: 1200px;margin-bottom: 25px">由江苏未来网络集团主办、中国高等教育学会教育信息化分会指导、开元云(北京)科技有限公司协办的全国高校算力网络创新论坛成功举办,该论坛聚焦高校数字化转型背景下,针对高校科研领域的新要求,分享算力网络最新的前沿技术,共话算力网络技术与服务企业产业布局,研讨高校科研需求与算力技术的供应。</span>
|
<span class="business-content" style="width: 1200px;margin-bottom: 25px">{{ translations[language].forumDesc }}</span>
|
||||||
<!-- 图片-->
|
<!-- 图片-->
|
||||||
<div style="display: flex;justify-content: center;align-items: space-between;padding-top: 15px" class="ckl">
|
<div style="display: flex;justify-content: center;align-items: space-between;padding-top: 15px" class="ckl">
|
||||||
<div style="width: 350px;height: 300px;">
|
<div style="width: 350px;height: 300px;">
|
||||||
@ -209,7 +129,7 @@
|
|||||||
|
|
||||||
<!-- 合作伙伴-->
|
<!-- 合作伙伴-->
|
||||||
<div class="friends">
|
<div class="friends">
|
||||||
<span class="business-title" style="margin-top: 50px;margin-bottom: 15px">合作伙伴</span>
|
<span class="business-title" style="margin-top: 50px;margin-bottom: 15px">{{ translations[language].partners }}</span>
|
||||||
<div class="logo-item-s">
|
<div class="logo-item-s">
|
||||||
<img src="../../assets/kyy/temporaryPic/logo1.jpg" style="width: 100px;height: 65px;" alt="">
|
<img src="../../assets/kyy/temporaryPic/logo1.jpg" style="width: 100px;height: 65px;" alt="">
|
||||||
<img src="../../assets/kyy/temporaryPic/logo8.png" style="width: 100px;height: 65px;" alt="">
|
<img src="../../assets/kyy/temporaryPic/logo8.png" style="width: 100px;height: 65px;" alt="">
|
||||||
@ -219,7 +139,6 @@
|
|||||||
<img src="../../assets/kyy/temporaryPic/logo4.jpg" alt="">
|
<img src="../../assets/kyy/temporaryPic/logo4.jpg" alt="">
|
||||||
<img src="../../assets/kyy/temporaryPic/logo6.png" alt="">
|
<img src="../../assets/kyy/temporaryPic/logo6.png" alt="">
|
||||||
<img src="../../assets/kyy/temporaryPic/logo7.jpg" alt="">
|
<img src="../../assets/kyy/temporaryPic/logo7.jpg" alt="">
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -227,8 +146,8 @@
|
|||||||
<div class="like">
|
<div class="like">
|
||||||
<img src="../../assets/kyy/编组_10.png" alt="">
|
<img src="../../assets/kyy/编组_10.png" alt="">
|
||||||
<div class="pic-word">
|
<div class="pic-word">
|
||||||
<span class="hiTitle">欢迎体验开元云</span>
|
<span class="hiTitle">{{ translations[language].welcome }}</span>
|
||||||
<span class="goLogin-style" @click="login">立即体验</span>
|
<span class="goLogin-style" @click="login">{{ translations[language].experienceNow }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
@ -237,26 +156,26 @@
|
|||||||
<div>
|
<div>
|
||||||
<img src="../../assets/kyy/temporaryPic/Icon-1.png" alt="">
|
<img src="../../assets/kyy/temporaryPic/Icon-1.png" alt="">
|
||||||
</div>
|
</div>
|
||||||
<span class="resource">资源全覆盖</span>
|
<span class="resource">{{ translations[language].feature1 }}</span>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="item-footer-top">
|
<div class="item-footer-top">
|
||||||
<div>
|
<div>
|
||||||
<img src="../../assets/kyy/temporaryPic/Icon-2.png" alt="">
|
<img src="../../assets/kyy/temporaryPic/Icon-2.png" alt="">
|
||||||
</div>
|
</div>
|
||||||
<span class="resource">体验极速</span>
|
<span class="resource">{{ translations[language].feature2 }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="item-footer-top">
|
<div class="item-footer-top">
|
||||||
<div>
|
<div>
|
||||||
<img src="../../assets/kyy/temporaryPic/Icon-3.png" alt="">
|
<img src="../../assets/kyy/temporaryPic/Icon-3.png" alt="">
|
||||||
</div>
|
</div>
|
||||||
<span class="resource">用户满意</span>
|
<span class="resource">{{ translations[language].feature3 }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="item-footer-top">
|
<div class="item-footer-top">
|
||||||
<div>
|
<div>
|
||||||
<img src="../../assets/kyy/temporaryPic/Icon-4.png" alt="">
|
<img src="../../assets/kyy/temporaryPic/Icon-4.png" alt="">
|
||||||
</div>
|
</div>
|
||||||
<span class="resource">省心计算</span>
|
<span class="resource">{{ translations[language].feature4 }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<!-- footer-->
|
<!-- footer-->
|
||||||
@ -268,24 +187,21 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="content-main">
|
<div class="content-main">
|
||||||
<ul>
|
<ul>
|
||||||
<li>地址:{{address}}</li>
|
<li>{{ translations[language].address }}:{{address}}</li>
|
||||||
<li>电话:400-6150805 <span style="margin-left: 20px">010-65917875 </span>
|
<li>{{ translations[language].phone }}:400-6150805 <span style="margin-left: 20px">010-65917875 </span></li>
|
||||||
</li>
|
<li>{{ translations[language].email }}:Open-computing@kaiyuancloud.cn</li>
|
||||||
<li>邮箱:Open-computing@kaiyuancloud.cn</li>
|
<li>{{ translations[language].icp }}:{{ICP}} <span style="margin-left: 20px">{{ translations[language].copyright }}</span></li>
|
||||||
<li>IPC备案号:{{ICP}} <span style="margin-left: 20px">版权所有 @kaiyuanyun 2023</span></li>
|
|
||||||
<li>
|
<li>
|
||||||
<img src="../../image/login/policeInsignia/policeInsignia.png" alt="" style="width:17px;height:17px;margin-right: 2px;">
|
<img src="../../image/login/policeInsignia/policeInsignia.png" alt="" style="width:17px;height:17px;margin-right: 2px;">
|
||||||
<a href="https://beian.mps.gov.cn/#/query/webSearch?code=11010502054007" rel="noreferrer" target="_blank" style="margin-right:30px;">京公网安备11010502054007</a>
|
<a href="https://beian.mps.gov.cn/#/query/webSearch?code=11010502054007" rel="noreferrer" target="_blank" style="margin-right:30px;">京公网安备11010502054007</a>
|
||||||
<span>
|
<span>
|
||||||
<router-link tag="a" target="_blank" :to="{ name: 'homePageImage' }">经营许可证:京B2-20232313</router-link>
|
<router-link tag="a" target="_blank" :to="{ name: 'homePageImage' }">{{ translations[language].license }}</router-link>
|
||||||
|
|
||||||
</span>
|
</span>
|
||||||
</li>
|
</li>
|
||||||
<li>
|
<li>
|
||||||
<!-- <a href="" rel="noreferrer" target="_blank"></a> -->
|
<!-- <a href="" rel="noreferrer" target="_blank"></a> -->
|
||||||
</li>
|
</li>
|
||||||
</ul>
|
</ul>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="right-box">
|
<div class="right-box">
|
||||||
@ -293,19 +209,18 @@
|
|||||||
<div class="qr-code">
|
<div class="qr-code">
|
||||||
<img src="../../assets/kyy/客服wechat.png" style="padding: 6px" alt="">
|
<img src="../../assets/kyy/客服wechat.png" style="padding: 6px" alt="">
|
||||||
</div>
|
</div>
|
||||||
<span class="qr-content">微信客服</span>
|
<span class="qr-content">{{ translations[language].wechatService }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="qr-box" style="margin-left: 50px">
|
<div class="qr-box" style="margin-left: 50px">
|
||||||
<div class="qr-code">
|
<div class="qr-code">
|
||||||
<img src="../../assets/kyy/kyy公众号.jpg" alt="">
|
<img src="../../assets/kyy/kyy公众号.jpg" alt="">
|
||||||
</div>
|
</div>
|
||||||
<span class="qr-content">扫描关注二维码</span>
|
<span class="qr-content">{{ translations[language].scanQRCode }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="intrudceMessage">
|
<div class="intrudceMessage">
|
||||||
<span style="margin-left: 2em">开元云科技(北京)公司是一家注册于2020年的高科技企业,在上海、南京、深圳、济南设有分支机构。公司通过自主研发的开元算力应用服务平台,将算力资源和算力应用进行整合,利用算力调度和确定性
|
<span style="margin-left: 2em">{{ translations[language].companyDesc1 }}</span>
|
||||||
</span>
|
<span>{{ translations[language].companyDesc2 }}</span>
|
||||||
<span>网络技术,为科研、XR、数字孪生和AI等行业提供专业算力服务,形成“算力服务+算力网络+算力应用”的一体化解决方案。</span>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -324,12 +239,14 @@ _MICHAT("domain", "emdchk.xianshangkefu.net");
|
|||||||
})(window, document, "script");
|
})(window, document, "script");
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getLogoAPI } from "@/api/login";
|
import { getLogoAPI } from "@/api/login";
|
||||||
import echarts from "echarts";
|
import echarts from "echarts";
|
||||||
import china from 'echarts/map/json/china.json'
|
import china from 'echarts/map/json/china.json'
|
||||||
import "../../../node_modules/echarts/map/js/china.js"; // 引入中国地图数据
|
import "../../../node_modules/echarts/map/js/china.js"; // 引入中国地图数据
|
||||||
|
// 导入语言管理
|
||||||
|
import { languageStore, languageBus } from '@/utils/language'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "indexNew",
|
name: "indexNew",
|
||||||
data() {
|
data() {
|
||||||
@ -342,22 +259,123 @@ export default {
|
|||||||
photosUrl: [],
|
photosUrl: [],
|
||||||
ICP: "京ICP备2022001945号-1",
|
ICP: "京ICP备2022001945号-1",
|
||||||
address: "农业展览馆13号瑞辰国际中心518B(团结湖地铁站c东南口步行420米)",
|
address: "农业展览馆13号瑞辰国际中心518B(团结湖地铁站c东南口步行420米)",
|
||||||
|
// 从共享状态获取语言
|
||||||
|
language: 'zh',
|
||||||
|
translations: {
|
||||||
|
zh: {
|
||||||
|
home: '首页',
|
||||||
|
products: '产品服务',
|
||||||
|
solutions: '解决方案',
|
||||||
|
serviceCenter: '服务中心',
|
||||||
|
news: '新闻资讯',
|
||||||
|
aboutUs: '关于我们',
|
||||||
|
login: '登录',
|
||||||
|
register: '注册',
|
||||||
|
publicCloud: '公有云',
|
||||||
|
superComputing: '超算',
|
||||||
|
intelligentComputing: '智算',
|
||||||
|
network: '网络',
|
||||||
|
coreBusiness: '核心业务',
|
||||||
|
coreBusinessDesc: '提供领先、可靠、多场景的应用解决方案安全、稳定、确定',
|
||||||
|
business1Title: '智算中心',
|
||||||
|
business1Desc: '智算中心咨询/规划/建设/运营/运维',
|
||||||
|
business2Title: '算力网络',
|
||||||
|
business2Desc: '云互联、超算互联、智算互联',
|
||||||
|
business3Title: '算力服务',
|
||||||
|
business3Desc: '融合云、HPC、AI算力、信创',
|
||||||
|
business4Title: '应用解决方案',
|
||||||
|
business4Desc: '企业多场景云服务、高校科学计算、大模型架构及应用',
|
||||||
|
solutionTitle: '深入业务场景的算网解决方案',
|
||||||
|
solutionDesc: '以高水平算网调度解决方案助力各行业高质量发展',
|
||||||
|
enterpriseNews: '企业资讯',
|
||||||
|
forumTitle: '全国高校算力网络创新论坛',
|
||||||
|
forumDesc: '由江苏未来网络集团主办、中国高等教育学会教育信息化分会指导、开元云(北京)科技有限公司协办的全国高校算力网络创新论坛成功举办,该论坛聚焦高校数字化转型背景下,针对高校科研领域的新要求,分享算力网络最新的前沿技术,共话算力网络技术与服务企业产业布局,研讨高校科研需求与算力技术的供应。',
|
||||||
|
partners: '合作伙伴',
|
||||||
|
welcome: '欢迎体验开元云',
|
||||||
|
experienceNow: '立即体验',
|
||||||
|
feature1: '资源全覆盖',
|
||||||
|
feature2: '体验极速',
|
||||||
|
feature3: '用户满意',
|
||||||
|
feature4: '省心计算',
|
||||||
|
address: '地址',
|
||||||
|
phone: '电话',
|
||||||
|
email: '邮箱',
|
||||||
|
icp: 'IPC备案号',
|
||||||
|
copyright: '版权所有 @kaiyuanyun 2023',
|
||||||
|
license: '经营许可证:京B2-20232313',
|
||||||
|
wechatService: '微信客服',
|
||||||
|
scanQRCode: '扫描关注二维码',
|
||||||
|
companyDesc1: '开元云科技(北京)公司是一家注册于2020年的高科技企业,在上海、南京、深圳、济南设有分支机构。公司通过自主研发的开元算力应用服务平台,将算力资源和算力应用进行整合,利用算力调度和确定性',
|
||||||
|
companyDesc2: '网络技术,为科研、XR、数字孪生和AI等行业提供专业算力服务,形成"算力服务+算力网络+算力应用"的一体化解决方案。'
|
||||||
|
},
|
||||||
|
en: {
|
||||||
|
home: 'Home',
|
||||||
|
products: 'Products & Services',
|
||||||
|
solutions: 'Solutions',
|
||||||
|
serviceCenter: 'Service Center',
|
||||||
|
news: 'News & Information',
|
||||||
|
aboutUs: 'About Us',
|
||||||
|
login: 'Login',
|
||||||
|
register: 'Register',
|
||||||
|
publicCloud: 'Public Cloud',
|
||||||
|
superComputing: 'Super Computing',
|
||||||
|
intelligentComputing: 'Intelligent Computing',
|
||||||
|
network: 'Network',
|
||||||
|
coreBusiness: 'Core Business',
|
||||||
|
coreBusinessDesc: 'Providing leading, reliable, multi-scenario application solutions that are safe, stable, and deterministic',
|
||||||
|
business1Title: 'Intelligent Computing Center',
|
||||||
|
business1Desc: 'Intelligent computing center consulting/planning/construction/operation/maintenance',
|
||||||
|
business2Title: 'Computing Power Network',
|
||||||
|
business2Desc: 'Cloud interconnection, supercomputing interconnection, intelligent computing interconnection',
|
||||||
|
business3Title: 'Computing Power Service',
|
||||||
|
business3Desc: 'Converged cloud, HPC, AI computing power, information innovation',
|
||||||
|
business4Title: 'Application Solutions',
|
||||||
|
business4Desc: 'Enterprise multi-scenario cloud services, university scientific computing, large model architecture and applications',
|
||||||
|
solutionTitle: 'In-depth Business Scenario Computing Network Solutions',
|
||||||
|
solutionDesc: 'Helping various industries achieve high-quality development with high-level computing network scheduling solutions',
|
||||||
|
enterpriseNews: 'Enterprise News',
|
||||||
|
forumTitle: 'National University Computing Power Network Innovation Forum',
|
||||||
|
forumDesc: 'The National University Computing Power Network Innovation Forum, hosted by Jiangsu Future Network Group, guided by the China Higher Education Association Education Informatization Branch, and co-organized by Kaiyuan Cloud (Beijing) Technology Co., Ltd., was successfully held. The forum focuses on new requirements in the university scientific research field under the background of university digital transformation, shares the latest cutting-edge technologies in computing power networks, discusses the industrial layout of computing power network technology and service enterprises, and researches the supply of university scientific research needs and computing power technology.',
|
||||||
|
partners: 'Partners',
|
||||||
|
welcome: 'Welcome to Experience Kaiyuan Cloud',
|
||||||
|
experienceNow: 'Experience Now',
|
||||||
|
feature1: 'Full Resource Coverage',
|
||||||
|
feature2: 'Ultra-Fast Experience',
|
||||||
|
feature3: 'User Satisfaction',
|
||||||
|
feature4: 'Worry-Free Computing',
|
||||||
|
address: 'Address',
|
||||||
|
phone: 'Phone',
|
||||||
|
email: 'Email',
|
||||||
|
icp: 'IPC Filing Number',
|
||||||
|
copyright: 'Copyright @kaiyuanyun 2023',
|
||||||
|
license: 'Business License: Jing B2-20232313',
|
||||||
|
wechatService: 'WeChat Customer Service',
|
||||||
|
scanQRCode: 'Scan to Follow QR Code',
|
||||||
|
companyDesc1: 'Kaiyuan Cloud Technology (Beijing) Company is a high-tech enterprise registered in 2020, with branches in Shanghai, Nanjing, Shenzhen, and Jinan. Through its self-developed Kaiyuan Computing Power Application Service Platform, the company integrates computing power resources and computing power applications, using computing power scheduling and deterministic',
|
||||||
|
companyDesc2: 'network technology to provide professional computing power services for scientific research, XR, digital twins, AI and other industries, forming an integrated solution of "computing power service + computing power network + computing power application".'
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.init()
|
this.init()
|
||||||
|
// 从共享状态获取当前语言
|
||||||
|
this.language = languageStore.getLanguage()
|
||||||
|
console.log('indexNew页面初始化语言:', this.language)
|
||||||
|
|
||||||
|
// 监听语言变化事件
|
||||||
|
languageBus.$on('language-changed', (lang) => {
|
||||||
|
console.log('indexNew页面接收到语言变化:', lang)
|
||||||
|
this.language = lang
|
||||||
|
})
|
||||||
|
},
|
||||||
|
beforeDestroy() {
|
||||||
|
// 移除事件监听
|
||||||
|
languageBus.$off('language-changed')
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
// this.initEchartMap();
|
// 原有的地图初始化代码...
|
||||||
// this.initEcahrtkk()
|
|
||||||
// this.initEcahrtkk1()
|
|
||||||
|
|
||||||
|
|
||||||
//上线时应解开
|
|
||||||
// this.initMapOne()
|
|
||||||
// this.initMapTwo()
|
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@ -407,8 +425,7 @@ export default {
|
|||||||
window.open('http://tmpweb.opencomputing.cn/col.jsp?id=104')
|
window.open('http://tmpweb.opencomputing.cn/col.jsp?id=104')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
dealWithData() {
|
||||||
dealWithData() {// 初始化地图
|
|
||||||
let geoCoordMap = {
|
let geoCoordMap = {
|
||||||
北京: [116.46, 39.92, 100],
|
北京: [116.46, 39.92, 100],
|
||||||
上海: [121.48, 31.22, 200],
|
上海: [121.48, 31.22, 200],
|
||||||
@ -420,190 +437,10 @@ export default {
|
|||||||
return data;
|
return data;
|
||||||
},
|
},
|
||||||
initMapOne() {
|
initMapOne() {
|
||||||
this.myEchart = echarts.init(this.$refs.myEchart);
|
// 原有的地图初始化代码...
|
||||||
let option = {
|
|
||||||
tooltip: {
|
|
||||||
show: false
|
|
||||||
},
|
|
||||||
geo: {
|
|
||||||
map: "china",
|
|
||||||
roam: false,// 一定要关闭拖拽
|
|
||||||
zoom: 1.23,
|
|
||||||
center: [105, 36], // 调整地图位置
|
|
||||||
label: {
|
|
||||||
normal: {
|
|
||||||
show: false, //关闭省份名展示
|
|
||||||
fontSize: "10",
|
|
||||||
color: "rgba(0,0,0,0.7)"
|
|
||||||
},
|
|
||||||
emphasis: {
|
|
||||||
show: false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
itemStyle: {
|
|
||||||
normal: {
|
|
||||||
areaColor: "#0d0059",
|
|
||||||
borderColor: "#389dff",
|
|
||||||
borderWidth: 1, //设置外层边框
|
|
||||||
shadowBlur: 5,
|
|
||||||
shadowOffsetY: 8,
|
|
||||||
shadowOffsetX: 0,
|
|
||||||
shadowColor: "#ecf0f7"
|
|
||||||
},
|
|
||||||
emphasis: {
|
|
||||||
areaColor: "#184cff",
|
|
||||||
shadowOffsetX: 0,
|
|
||||||
shadowOffsetY: 0,
|
|
||||||
shadowBlur: 5,
|
|
||||||
borderWidth: 0,
|
|
||||||
shadowColor: "rgba(0, 0, 0, 0.5)"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
series: [
|
|
||||||
{
|
|
||||||
type: "map",
|
|
||||||
map: "china",
|
|
||||||
roam: false,
|
|
||||||
zoom: 1.23,
|
|
||||||
center: [105, 36],
|
|
||||||
// geoIndex: 1,
|
|
||||||
// aspectScale: 0.75, //长宽比
|
|
||||||
showLegendSymbol: false, // 存在legend时显示
|
|
||||||
label: {
|
|
||||||
normal: {
|
|
||||||
show: false
|
|
||||||
},
|
|
||||||
emphasis: {
|
|
||||||
show: false,
|
|
||||||
textStyle: {
|
|
||||||
color: "#fff"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
itemStyle: {
|
|
||||||
normal: {
|
|
||||||
areaColor: "#0d0059",
|
|
||||||
borderColor: "#389dff",
|
|
||||||
borderWidth: 0.5
|
|
||||||
},
|
|
||||||
emphasis: {
|
|
||||||
areaColor: "#17008d",
|
|
||||||
shadowOffsetX: 0,
|
|
||||||
shadowOffsetY: 0,
|
|
||||||
shadowBlur: 5,
|
|
||||||
borderWidth: 0,
|
|
||||||
shadowColor: "rgba(0, 0, 0, 0.5)"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
};
|
|
||||||
this.myEchart.setOption(option);
|
|
||||||
|
|
||||||
},
|
},
|
||||||
initMapTwo() {
|
initMapTwo() {
|
||||||
this.myEchart = echarts.init(this.$refs.myEchart);
|
// 原有的地图初始化代码...
|
||||||
let dataValue = this.dealWithData();
|
|
||||||
// var data1 = dataValue.splice(0, 6);
|
|
||||||
let citySchoolMap = [
|
|
||||||
{ '北京': ['北京大学', '清华大学', '北京航空航天大学'] },
|
|
||||||
{ '上海': ['同济大学', '上海交通大学'] },
|
|
||||||
{ '邢台': ['邢台学院', '邢台一中'] },
|
|
||||||
{ '泸州': ['泸州大学'] },
|
|
||||||
]
|
|
||||||
let option = {
|
|
||||||
series: [
|
|
||||||
{
|
|
||||||
type: "map",
|
|
||||||
map: "china",
|
|
||||||
roam: false,
|
|
||||||
zoom: 1.23,
|
|
||||||
center: [105, 36],
|
|
||||||
// geoIndex: 1,
|
|
||||||
// aspectScale: 0.75, //长宽比
|
|
||||||
showLegendSymbol: false, // 存在legend时显示
|
|
||||||
label: {
|
|
||||||
normal: {
|
|
||||||
show: false
|
|
||||||
},
|
|
||||||
emphasis: {
|
|
||||||
show: false
|
|
||||||
}
|
|
||||||
},
|
|
||||||
itemStyle: {
|
|
||||||
normal: {
|
|
||||||
areaColor: "#fbfdff",
|
|
||||||
borderColor: "#389dff",
|
|
||||||
borderWidth: 0.5
|
|
||||||
},
|
|
||||||
emphasis: {
|
|
||||||
areaColor: "#fbfdff",
|
|
||||||
shadowOffsetX: 0,
|
|
||||||
shadowOffsetY: 0,
|
|
||||||
shadowBlur: 5,
|
|
||||||
borderWidth: 0,
|
|
||||||
shadowColor: "rgba(0, 0, 0, 0.5)"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
{
|
|
||||||
name: "",
|
|
||||||
type: "scatter",
|
|
||||||
coordinateSystem: "geo",
|
|
||||||
data: dataValue,
|
|
||||||
// symbolSize: function(val) {
|
|
||||||
// return val[2] / 10;
|
|
||||||
// },
|
|
||||||
symbol: "circle",
|
|
||||||
symbolSize: 10,
|
|
||||||
hoverSymbolSize: 15,
|
|
||||||
tooltip: {
|
|
||||||
formatter(value) {
|
|
||||||
const cityName = value.data.name;
|
|
||||||
let schoolInfo = '';
|
|
||||||
citySchoolMap.forEach(obj => {
|
|
||||||
if (obj[cityName]) {
|
|
||||||
schoolInfo = obj[cityName].join("<br/>");
|
|
||||||
}
|
|
||||||
});
|
|
||||||
const resultDiv = '<div class="custom-tooltip">' +
|
|
||||||
cityName + '市' + "<br/>" +
|
|
||||||
'<span class="highlight">' + schoolInfo + '</span>' +
|
|
||||||
'</div>';
|
|
||||||
// return cityName +'市'+ "<br/>"+ '<span class="highlight">' + schoolInfo + '</span>';
|
|
||||||
return resultDiv
|
|
||||||
},
|
|
||||||
show: true,
|
|
||||||
backgroundColor: '#f4f6f8',
|
|
||||||
textStyle: {
|
|
||||||
color: "#333",
|
|
||||||
fontSize: 12
|
|
||||||
},
|
|
||||||
borderColor: '#333',
|
|
||||||
padding: 7
|
|
||||||
},
|
|
||||||
encode: {
|
|
||||||
value: 2
|
|
||||||
},
|
|
||||||
label: {
|
|
||||||
formatter: "{b}",
|
|
||||||
position: "right",
|
|
||||||
show: true, //展示城市名称
|
|
||||||
fontWeight: 'bolder'
|
|
||||||
},
|
|
||||||
itemStyle: {
|
|
||||||
color: "#1907f8"
|
|
||||||
},
|
|
||||||
emphasis: {
|
|
||||||
label: {
|
|
||||||
show: false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
]
|
|
||||||
};
|
|
||||||
this.myEchart.setOption(option);
|
|
||||||
},
|
},
|
||||||
GetQueryString(name) {
|
GetQueryString(name) {
|
||||||
if (name.indexOf("#") != -1) {
|
if (name.indexOf("#") != -1) {
|
||||||
@ -634,8 +471,6 @@ ul {
|
|||||||
list-style: none;
|
list-style: none;
|
||||||
}
|
}
|
||||||
|
|
||||||
//
|
|
||||||
|
|
||||||
.logo {
|
.logo {
|
||||||
background-color: #32abfc;
|
background-color: #32abfc;
|
||||||
margin-left: 35px;
|
margin-left: 35px;
|
||||||
@ -693,10 +528,8 @@ ul {
|
|||||||
//轮播图
|
//轮播图
|
||||||
.banner {
|
.banner {
|
||||||
position: relative;
|
position: relative;
|
||||||
//width: 1200px;
|
|
||||||
width: 1.25rem;
|
width: 1.25rem;
|
||||||
height: 4.5rem;
|
height: 4.5rem;
|
||||||
|
|
||||||
border:1px solid red;
|
border:1px solid red;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
}
|
}
|
||||||
@ -750,12 +583,9 @@ ul {
|
|||||||
width: 300px;
|
width: 300px;
|
||||||
}
|
}
|
||||||
|
|
||||||
//实施算网融合发展行动
|
|
||||||
.action {
|
.action {
|
||||||
position: relative;
|
position: relative;
|
||||||
height: 868px;
|
height: 868px;
|
||||||
//border: 1px solid red;
|
|
||||||
//background-color: blue;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
align-items: center;
|
align-items: center;
|
||||||
@ -815,16 +645,13 @@ ul {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.num {
|
.num {
|
||||||
//margin-top: px;
|
|
||||||
width: 35%;
|
width: 35%;
|
||||||
|
|
||||||
height: 500px;
|
height: 500px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.pic-right {
|
.pic-right {
|
||||||
width: 40%;
|
width: 40%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
//background-color: skyblue;
|
|
||||||
display: flex;
|
display: flex;
|
||||||
flex-direction: column;
|
flex-direction: column;
|
||||||
|
|
||||||
@ -832,7 +659,6 @@ ul {
|
|||||||
margin: 15px 0;
|
margin: 15px 0;
|
||||||
margin-left: 150px;
|
margin-left: 150px;
|
||||||
width: 200px;
|
width: 200px;
|
||||||
|
|
||||||
height: 200px;
|
height: 200px;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -982,8 +808,6 @@ ul {
|
|||||||
position: relative;
|
position: relative;
|
||||||
width: 1212px;
|
width: 1212px;
|
||||||
height: 616px;
|
height: 616px;
|
||||||
|
|
||||||
//border:1px solid red;
|
|
||||||
img {
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
@ -1117,7 +941,6 @@ ul {
|
|||||||
|
|
||||||
.left-box {
|
.left-box {
|
||||||
width: 50%;
|
width: 50%;
|
||||||
//border: 1px solid red;
|
|
||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
@ -1126,7 +949,6 @@ ul {
|
|||||||
|
|
||||||
.right-box {
|
.right-box {
|
||||||
width: 50%;
|
width: 50%;
|
||||||
//border: 1px solid red;
|
|
||||||
height: 100%;
|
height: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
justify-content: center;
|
justify-content: center;
|
||||||
@ -1161,7 +983,6 @@ ul {
|
|||||||
|
|
||||||
width: 139px;
|
width: 139px;
|
||||||
height: 139px;
|
height: 139px;
|
||||||
//border:1px solid red;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.qr-content {
|
.qr-content {
|
||||||
@ -1237,7 +1058,6 @@ ul {
|
|||||||
padding: 12px;
|
padding: 12px;
|
||||||
opacity: 0.8;
|
opacity: 0.8;
|
||||||
mix-blend-mode: normal;
|
mix-blend-mode: normal;
|
||||||
|
|
||||||
color: #f35626;
|
color: #f35626;
|
||||||
font-weight: 700;
|
font-weight: 700;
|
||||||
background: coral;
|
background: coral;
|
||||||
@ -1363,7 +1183,6 @@ ul {
|
|||||||
|
|
||||||
img {
|
img {
|
||||||
margin-right: 20px;
|
margin-right: 20px;
|
||||||
//border:1px solid red;
|
|
||||||
width: 100px;
|
width: 100px;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -126,9 +126,6 @@
|
|||||||
<a @click="$router.push('/registrationPage')" v-if="!loginState" class="register-btn">{{
|
<a @click="$router.push('/registrationPage')" v-if="!loginState" class="register-btn">{{
|
||||||
translations[language].register }}</a>
|
translations[language].register }}</a>
|
||||||
|
|
||||||
<!-- 用户名(注释掉) -->
|
|
||||||
<!-- <span style="text-decoration: underline; text-decoration-color: #1b5bff" v-if="!showRegisterButton">{{ username }}</span> -->
|
|
||||||
|
|
||||||
<!-- 用户下拉菜单(非ncmatchHome页面且已登录) -->
|
<!-- 用户下拉菜单(非ncmatchHome页面且已登录) -->
|
||||||
<el-dropdown v-if="loginState && homePath !== '/ncmatchHome/index'" @visible-change="handleShow"
|
<el-dropdown v-if="loginState && homePath !== '/ncmatchHome/index'" @visible-change="handleShow"
|
||||||
class="avatar-container right-menu-item hover-effect nick-name-style" style="margin-right: 0" trigger="click">
|
class="avatar-container right-menu-item hover-effect nick-name-style" style="margin-right: 0" trigger="click">
|
||||||
@ -214,7 +211,6 @@
|
|||||||
<!-- 分隔线 -->
|
<!-- 分隔线 -->
|
||||||
<span class="ge"></span>
|
<span class="ge"></span>
|
||||||
<!-- 左侧面板:三级菜单(如果存在且不等于二级菜单标题) -->
|
<!-- 左侧面板:三级菜单(如果存在且不等于二级菜单标题) -->
|
||||||
<!-- 修复:添加安全判断 -->
|
|
||||||
<div
|
<div
|
||||||
v-if="secMenuData.length > 0 && secMenuData[0].thrMenu && secMenuData[0].thrMenu.length > 0 && secMenuData[0].thrMenu[0].thrTitle != null && secMenuData[0].secTitle !== secMenuData[0].thrMenu[0].thrTitle"
|
v-if="secMenuData.length > 0 && secMenuData[0].thrMenu && secMenuData[0].thrMenu.length > 0 && secMenuData[0].thrMenu[0].thrTitle != null && secMenuData[0].secTitle !== secMenuData[0].thrMenu[0].thrTitle"
|
||||||
class="panelLeft">
|
class="panelLeft">
|
||||||
@ -226,12 +222,10 @@
|
|||||||
</ul>
|
</ul>
|
||||||
</div>
|
</div>
|
||||||
<!-- 分隔线 -->
|
<!-- 分隔线 -->
|
||||||
<!-- 修复:添加安全判断 -->
|
|
||||||
<span
|
<span
|
||||||
v-if="secMenuData.length > 0 && secMenuData[0].thrMenu && secMenuData[0].thrMenu.length > 0 && secMenuData[0].thrMenu[0].thrTitle != null && secMenuData[0].secTitle !== secMenuData[0].thrMenu[0].thrTitle"
|
v-if="secMenuData.length > 0 && secMenuData[0].thrMenu && secMenuData[0].thrMenu.length > 0 && secMenuData[0].thrMenu[0].thrTitle != null && secMenuData[0].secTitle !== secMenuData[0].thrMenu[0].thrTitle"
|
||||||
class="ge"></span>
|
class="ge"></span>
|
||||||
<!-- 右侧面板:最细粒度的菜单项 -->
|
<!-- 右侧面板:最细粒度的菜单项 -->
|
||||||
<!-- 修复:添加安全判断 -->
|
|
||||||
<div class="panelRight" v-if="showPanelRightData.length > 0 && showPanelRightData[0] && showPanelRightData[0].value">
|
<div class="panelRight" v-if="showPanelRightData.length > 0 && showPanelRightData[0] && showPanelRightData[0].value">
|
||||||
<ul class="leastMenu inBox">
|
<ul class="leastMenu inBox">
|
||||||
<li class="clickItem" style="font-size: 14px!important;margin: 8px 0;cursor: pointer"
|
<li class="clickItem" style="font-size: 14px!important;margin: 8px 0;cursor: pointer"
|
||||||
@ -289,7 +283,8 @@ export default Vue.extend({
|
|||||||
threeData: [], // 三级菜单数据
|
threeData: [], // 三级菜单数据
|
||||||
fourData: [], // 四级菜单数据(未使用)
|
fourData: [], // 四级菜单数据(未使用)
|
||||||
product_service: [], // 产品服务数据
|
product_service: [], // 产品服务数据
|
||||||
language: languageStore.getLanguage(), // 从共享状态获取语言
|
language: 'zh', // 默认设置为中文
|
||||||
|
languageChangedHandler: null, // 语言变化事件处理器
|
||||||
translations: {
|
translations: {
|
||||||
zh: {
|
zh: {
|
||||||
home: '首页',
|
home: '首页',
|
||||||
@ -529,10 +524,11 @@ export default Vue.extend({
|
|||||||
// 初始化组件
|
// 初始化组件
|
||||||
this.init()
|
this.init()
|
||||||
|
|
||||||
// 监听语言变化事件
|
// 修复:确保从共享状态获取当前语言
|
||||||
languageBus.$on('language-changed', (lang) => {
|
this.initLanguage()
|
||||||
this.language = lang
|
|
||||||
})
|
// 初始化导航数据
|
||||||
|
this.initData()
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
// 组件挂载时,从sessionStorage获取用户名
|
// 组件挂载时,从sessionStorage获取用户名
|
||||||
@ -549,13 +545,12 @@ export default Vue.extend({
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
// 初始化导航数据
|
|
||||||
this.initData()
|
|
||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
// 移除事件监听
|
// 移除事件监听
|
||||||
languageBus.$off('language-changed')
|
if (this.languageChangedHandler) {
|
||||||
|
languageBus.$off('language-changed', this.languageChangedHandler)
|
||||||
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
// 判断当前是否为ncmatchHome页面
|
// 判断当前是否为ncmatchHome页面
|
||||||
@ -592,11 +587,52 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 初始化语言状态
|
||||||
|
initLanguage() {
|
||||||
|
// 直接从store获取当前语言,确保一致性
|
||||||
|
this.language = languageStore.getLanguage()
|
||||||
|
console.log('topBox初始化语言:', this.language)
|
||||||
|
|
||||||
|
// 保存事件处理函数的引用,以便正确移除
|
||||||
|
this.languageChangedHandler = (lang) => {
|
||||||
|
console.log('topBox接收到语言变化:', lang)
|
||||||
|
this.language = lang
|
||||||
|
}
|
||||||
|
|
||||||
|
// 监听语言变化事件
|
||||||
|
languageBus.$on('language-changed', this.languageChangedHandler)
|
||||||
|
},
|
||||||
|
|
||||||
|
// 切换语言 - 统一使用共享状态
|
||||||
|
toggleLanguage() {
|
||||||
|
const newLanguage = this.language === 'zh' ? 'en' : 'zh';
|
||||||
|
console.log('topBox切换语言到:', newLanguage);
|
||||||
|
|
||||||
|
// 使用共享状态管理,确保所有组件同步
|
||||||
|
languageStore.setLanguage(newLanguage);
|
||||||
|
|
||||||
|
// 调试信息
|
||||||
|
setTimeout(() => {
|
||||||
|
console.log('切换后验证 - topBox语言:', this.language);
|
||||||
|
console.log('切换后验证 - store语言:', languageStore.getLanguage());
|
||||||
|
}, 200);
|
||||||
|
},
|
||||||
|
|
||||||
// 获取翻译文本的通用方法
|
// 获取翻译文本的通用方法
|
||||||
getTranslation(key) {
|
getTranslation(key) {
|
||||||
if (!key) return ''
|
if (!key) return ''
|
||||||
return this.translations[this.language]?.[key] || key
|
return this.translations[this.language]?.[key] || key
|
||||||
},
|
},
|
||||||
|
|
||||||
|
// 调试语言状态
|
||||||
|
debugLanguage() {
|
||||||
|
console.log('=== topBox语言调试信息 ===');
|
||||||
|
console.log('当前语言:', this.language);
|
||||||
|
console.log('languageStore状态:', languageStore.getLanguage());
|
||||||
|
console.log('localStorage状态:', localStorage.getItem('language'));
|
||||||
|
languageStore.debug();
|
||||||
|
},
|
||||||
|
|
||||||
// 控制台按钮点击事件:根据角色跳转不同页面
|
// 控制台按钮点击事件:根据角色跳转不同页面
|
||||||
goB() {
|
goB() {
|
||||||
if (sessionStorage.getItem('jueseNew').includes('客户')) {
|
if (sessionStorage.getItem('jueseNew').includes('客户')) {
|
||||||
@ -605,11 +641,7 @@ export default Vue.extend({
|
|||||||
this.$router.push('/operation/supplierManagement')
|
this.$router.push('/operation/supplierManagement')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 切换语言 - 修改为使用共享状态
|
|
||||||
toggleLanguage() {
|
|
||||||
const newLanguage = this.language === 'zh' ? 'en' : 'zh';
|
|
||||||
languageStore.setLanguage(newLanguage)
|
|
||||||
},
|
|
||||||
// 初始化Logo信息
|
// 初始化Logo信息
|
||||||
init() {
|
init() {
|
||||||
let remoteUrl = ''
|
let remoteUrl = ''
|
||||||
@ -655,6 +687,7 @@ export default Vue.extend({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
// 退出登录
|
// 退出登录
|
||||||
async logout() {
|
async logout() {
|
||||||
this.$store.commit('setLoginState', false) // 设置Vuex登录状态为false
|
this.$store.commit('setLoginState', false) // 设置Vuex登录状态为false
|
||||||
@ -679,10 +712,12 @@ export default Vue.extend({
|
|||||||
await this.$router.push(getHomePath());
|
await this.$router.push(getHomePath());
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// 修改密码(未完全实现)
|
// 修改密码(未完全实现)
|
||||||
edituserPassword() {
|
edituserPassword() {
|
||||||
this.passwordDialog = true;
|
this.passwordDialog = true;
|
||||||
},
|
},
|
||||||
|
|
||||||
// 申请渠道管理
|
// 申请渠道管理
|
||||||
channelFirstBtn() {
|
channelFirstBtn() {
|
||||||
reqApplyChannel({ user_id: this.userId }).then(res => {
|
reqApplyChannel({ user_id: this.userId }).then(res => {
|
||||||
@ -695,10 +730,12 @@ export default Vue.extend({
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
// 初始化余额(从sessionStorage获取)
|
// 初始化余额(从sessionStorage获取)
|
||||||
initMybalance() {
|
initMybalance() {
|
||||||
return sessionStorage.getItem('mybalance')
|
return sessionStorage.getItem('mybalance')
|
||||||
},
|
},
|
||||||
|
|
||||||
// 复制用户ID
|
// 复制用户ID
|
||||||
copyBtn() {
|
copyBtn() {
|
||||||
const textToCopy = this.$refs.contentToCopy.innerText;
|
const textToCopy = this.$refs.contentToCopy.innerText;
|
||||||
@ -708,6 +745,7 @@ export default Vue.extend({
|
|||||||
console.error('复制失败', error);
|
console.error('复制失败', error);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
// 获取用户信息
|
// 获取用户信息
|
||||||
async getUserInfo() {
|
async getUserInfo() {
|
||||||
getUserInfoAPI({ id: this.userId }).then((res) => {
|
getUserInfoAPI({ id: this.userId }).then((res) => {
|
||||||
@ -723,6 +761,7 @@ export default Vue.extend({
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
// 处理下拉菜单显示/隐藏时的图标旋转
|
// 处理下拉菜单显示/隐藏时的图标旋转
|
||||||
handleShow(isShow) {
|
handleShow(isShow) {
|
||||||
let resverNode = document.getElementById('resverIcon')
|
let resverNode = document.getElementById('resverIcon')
|
||||||
@ -737,6 +776,7 @@ export default Vue.extend({
|
|||||||
resverNode.style.transform = 'rotate(0)' // 恢复图标
|
resverNode.style.transform = 'rotate(0)' // 恢复图标
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// 鼠标进入三级菜单项
|
// 鼠标进入三级菜单项
|
||||||
sildeThrMenu(item) {
|
sildeThrMenu(item) {
|
||||||
console.log("it", item)
|
console.log("it", item)
|
||||||
@ -744,6 +784,7 @@ export default Vue.extend({
|
|||||||
res.push(item)
|
res.push(item)
|
||||||
this.showPanelRightData = res
|
this.showPanelRightData = res
|
||||||
},
|
},
|
||||||
|
|
||||||
// 点击菜单项进行跳转或打开新窗口
|
// 点击菜单项进行跳转或打开新窗口
|
||||||
clickGo(item) {
|
clickGo(item) {
|
||||||
this.$store.commit('setShowHomeNav', false) // 隐藏导航面板
|
this.$store.commit('setShowHomeNav', false) // 隐藏导航面板
|
||||||
@ -828,6 +869,7 @@ export default Vue.extend({
|
|||||||
this.$router.push('/homePage/customerService')
|
this.$router.push('/homePage/customerService')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// 改变面板数据
|
// 改变面板数据
|
||||||
changeData(data) {
|
changeData(data) {
|
||||||
this.showPanelData = data || []
|
this.showPanelData = data || []
|
||||||
@ -857,6 +899,7 @@ export default Vue.extend({
|
|||||||
this.showPanelRightData = []
|
this.showPanelRightData = []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// 初始化导航数据
|
// 初始化导航数据
|
||||||
initData() {
|
initData() {
|
||||||
reqNavList({ url_link: window.location.href }).then(res => {
|
reqNavList({ url_link: window.location.href }).then(res => {
|
||||||
@ -872,6 +915,7 @@ export default Vue.extend({
|
|||||||
this.changeData([])
|
this.changeData([])
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|
||||||
// 构建导航数据结构
|
// 构建导航数据结构
|
||||||
buildData(data) {
|
buildData(data) {
|
||||||
let res = [];
|
let res = [];
|
||||||
@ -892,6 +936,7 @@ export default Vue.extend({
|
|||||||
});
|
});
|
||||||
return data; // 返回修改后的原始数据
|
return data; // 返回修改后的原始数据
|
||||||
},
|
},
|
||||||
|
|
||||||
// 鼠标进入二级菜单项
|
// 鼠标进入二级菜单项
|
||||||
sildeSecMenu(item) {
|
sildeSecMenu(item) {
|
||||||
console.log("获取的item时", item)
|
console.log("获取的item时", item)
|
||||||
@ -915,6 +960,7 @@ export default Vue.extend({
|
|||||||
|
|
||||||
this.showPanelRightData = this.threeData
|
this.showPanelRightData = this.threeData
|
||||||
},
|
},
|
||||||
|
|
||||||
// 返回测试数据(未使用)
|
// 返回测试数据(未使用)
|
||||||
networkData() {
|
networkData() {
|
||||||
return networkData
|
return networkData
|
||||||
@ -925,6 +971,7 @@ export default Vue.extend({
|
|||||||
testData() {
|
testData() {
|
||||||
return testData
|
return testData
|
||||||
},
|
},
|
||||||
|
|
||||||
// 鼠标进入一级菜单项
|
// 鼠标进入一级菜单项
|
||||||
sildeItemIn(item) {
|
sildeItemIn(item) {
|
||||||
this.firId = item.id
|
this.firId = item.id
|
||||||
@ -936,6 +983,7 @@ export default Vue.extend({
|
|||||||
computingData() {
|
computingData() {
|
||||||
return computingData
|
return computingData
|
||||||
},
|
},
|
||||||
|
|
||||||
// 鼠标进入生态与合作菜单
|
// 鼠标进入生态与合作菜单
|
||||||
sildeIn(item) {
|
sildeIn(item) {
|
||||||
console.log("sildeIn", item)
|
console.log("sildeIn", item)
|
||||||
@ -948,6 +996,7 @@ export default Vue.extend({
|
|||||||
this.$store.commit('setShowHomeNav', true)
|
this.$store.commit('setShowHomeNav', true)
|
||||||
}, 100)
|
}, 100)
|
||||||
},
|
},
|
||||||
|
|
||||||
// 鼠标离开导航区域
|
// 鼠标离开导航区域
|
||||||
sildeOut() {
|
sildeOut() {
|
||||||
if (this.showTimer) {
|
if (this.showTimer) {
|
||||||
@ -958,12 +1007,14 @@ export default Vue.extend({
|
|||||||
this.$store.commit('setShowHomeNav', false)
|
this.$store.commit('setShowHomeNav', false)
|
||||||
}, 200)
|
}, 200)
|
||||||
},
|
},
|
||||||
|
|
||||||
// 鼠标进入面板区域,取消隐藏
|
// 鼠标进入面板区域,取消隐藏
|
||||||
keepPanel() {
|
keepPanel() {
|
||||||
if (this.hideTimer) {
|
if (this.hideTimer) {
|
||||||
clearTimeout(this.hideTimer)
|
clearTimeout(this.hideTimer)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
// 处理登录跳转逻辑
|
// 处理登录跳转逻辑
|
||||||
handleGoLogin() {
|
handleGoLogin() {
|
||||||
let token = this.$store.getters.token;
|
let token = this.$store.getters.token;
|
||||||
@ -1080,6 +1131,7 @@ export default Vue.extend({
|
|||||||
text-decoration: none;
|
text-decoration: none;
|
||||||
transition: all 0.3s;
|
transition: all 0.3s;
|
||||||
color: #333;
|
color: #333;
|
||||||
|
z-index: 1001; /* 确保按钮在最上层 */
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
color: #1E6FFF;
|
color: #1E6FFF;
|
||||||
|
|||||||
@ -13,13 +13,12 @@
|
|||||||
class="img">
|
class="img">
|
||||||
<div class="content-main">
|
<div class="content-main">
|
||||||
<ul class="info">
|
<ul class="info">
|
||||||
<li>地址:<span v-if="JSON.stringify(logoInfoNew)!=='{}'">{{ logoInfoNew.home.adress }}</span>
|
<li>{{ translations[language].address }}:<span v-if="JSON.stringify(logoInfoNew)!=='{}'">{{ logoInfoNew.home.adress }}</span>
|
||||||
</li>
|
</li>
|
||||||
<li v-if="JSON.stringify(logoInfoNew)!=='{}'"> 邮箱:{{logoInfoNew.home.email}}</li>
|
<li v-if="JSON.stringify(logoInfoNew)!=='{}'"> {{ translations[language].email }}:{{logoInfoNew.home.email}}</li>
|
||||||
<li v-if="JSON.stringify(logoInfoNew)!=='{}'">电话: <span class="tel">{{logoInfoNew.home.mobile}}</span>
|
<li v-if="JSON.stringify(logoInfoNew)!=='{}'">{{ translations[language].phone }}: <span class="tel">{{logoInfoNew.home.mobile}}</span>
|
||||||
</li>
|
</li>
|
||||||
|
|
||||||
|
|
||||||
<li>
|
<li>
|
||||||
<!-- <a href="" rel="noreferrer" target="_blank"></a> -->
|
<!-- <a href="" rel="noreferrer" target="_blank"></a> -->
|
||||||
</li>
|
</li>
|
||||||
@ -30,35 +29,35 @@
|
|||||||
<ul class="bigUl">
|
<ul class="bigUl">
|
||||||
|
|
||||||
<!-- <li class="bigLi">-->
|
<!-- <li class="bigLi">-->
|
||||||
<!-- <span class="title">关于我们</span>-->
|
<!-- <span class="title">{{ translations[language].aboutUs }}</span>-->
|
||||||
<!-- <ul class="smallUl">-->
|
<!-- <ul class="smallUl">-->
|
||||||
<!-- <li class="smallLi" @click="$router.push('/homePage/about')">公司介绍</li>-->
|
<!-- <li class="smallLi" @click="$router.push('/homePage/about')">{{ translations[language].companyIntro }}</li>-->
|
||||||
<!-- </ul>-->
|
<!-- </ul>-->
|
||||||
<!-- <span class="title"> </span>-->
|
<!-- <span class="title"> </span>-->
|
||||||
<!-- </li>-->
|
<!-- </li>-->
|
||||||
<!-- <li class="bigLi">-->
|
<!-- <li class="bigLi">-->
|
||||||
<!-- <span class="title">产品</span>-->
|
<!-- <span class="title">{{ translations[language].products }}</span>-->
|
||||||
<!-- <ul class="smallUl">-->
|
<!-- <ul class="smallUl">-->
|
||||||
<!-- <li @click="goBaidu" class="smallLi">百度云</li>-->
|
<!-- <li @click="goBaidu" class="smallLi">{{ translations[language].baiduCloud }}</li>-->
|
||||||
<!-- <li @click="goAliyun" class="smallLi">阿里云</li>-->
|
<!-- <li @click="goAliyun" class="smallLi">{{ translations[language].aliCloud }}</li>-->
|
||||||
<!-- <!– <li class="smallLi">开元云</li>–>-->
|
<!-- <!– <li class="smallLi">{{ translations[language].kaiyuanCloud }}</li>–>-->
|
||||||
<!-- </ul>-->
|
<!-- </ul>-->
|
||||||
<!-- <span class="title"> </span>-->
|
<!-- <span class="title"> </span>-->
|
||||||
<!-- </li>-->
|
<!-- </li>-->
|
||||||
<!-- <li class="bigLi">-->
|
<!-- <li class="bigLi">-->
|
||||||
<!-- <span class="title">解决方案</span>-->
|
<!-- <span class="title">{{ translations[language].solutions }}</span>-->
|
||||||
<!-- <ul class="smallUl">-->
|
<!-- <ul class="smallUl">-->
|
||||||
<!-- <li class="smallLi">生物医药</li>-->
|
<!-- <li class="smallLi">{{ translations[language].biomedicine }}</li>-->
|
||||||
<!-- </ul>-->
|
<!-- </ul>-->
|
||||||
<!-- <span class="title"> </span>-->
|
<!-- <span class="title"> </span>-->
|
||||||
<!-- </li>-->
|
<!-- </li>-->
|
||||||
<!-- <li class="bigLi">-->
|
<!-- <li class="bigLi">-->
|
||||||
<!-- <span class="title">服务与支持</span>-->
|
<!-- <span class="title">{{ translations[language].serviceSupport }}</span>-->
|
||||||
<!-- <ul class="smallUl">-->
|
<!-- <ul class="smallUl">-->
|
||||||
<!-- <li class="smallLi">模型微调</li>-->
|
<!-- <li class="smallLi">{{ translations[language].modelFineTuning }}</li>-->
|
||||||
<!-- <li class="smallLi">模型应用</li>-->
|
<!-- <li class="smallLi">{{ translations[language].modelApplication }}</li>-->
|
||||||
<!-- <li class="smallLi">业务咨询</li>-->
|
<!-- <li class="smallLi">{{ translations[language].businessConsulting }}</li>-->
|
||||||
<!-- <li class="smallLi">加入开元</li>-->
|
<!-- <li class="smallLi">{{ translations[language].joinKaiyuan }}</li>-->
|
||||||
<!-- </ul>-->
|
<!-- </ul>-->
|
||||||
<!-- <span class="title"> </span>-->
|
<!-- <span class="title"> </span>-->
|
||||||
<!-- </li>-->
|
<!-- </li>-->
|
||||||
@ -68,13 +67,13 @@
|
|||||||
<div class="qr-code">
|
<div class="qr-code">
|
||||||
<img src="./img/kefu.jpg" style="padding: 0.08rem" alt="">
|
<img src="./img/kefu.jpg" style="padding: 0.08rem" alt="">
|
||||||
</div>
|
</div>
|
||||||
<span class="qr-content">微信客服</span>
|
<span class="qr-content">{{ translations[language].wechatCustomerService }}</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="qr-box" style="margin-left: 0.667rem">
|
<div class="qr-box" style="margin-left: 0.667rem">
|
||||||
<div class="qr-code">
|
<div class="qr-code">
|
||||||
<img src="./img/img.png" alt="">
|
<img src="./img/img.png" alt="">
|
||||||
</div>
|
</div>
|
||||||
<span class="qr-content">关注公众号</span>
|
<span class="qr-content">{{ translations[language].followOfficialAccount }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@ -83,7 +82,7 @@
|
|||||||
style="margin:15px 0 ;width: 1400px;display:flex;justify-content:center;align-items:center;color: #7A82A0;"><span
|
style="margin:15px 0 ;width: 1400px;display:flex;justify-content:center;align-items:center;color: #7A82A0;"><span
|
||||||
class="goStyle"
|
class="goStyle"
|
||||||
@click="goOut('https://beian.miit.gov.cn/#/Integrated/index')">
|
@click="goOut('https://beian.miit.gov.cn/#/Integrated/index')">
|
||||||
京ICP备{{
|
{{ translations[language].icpRecord }} {{
|
||||||
logoInfoNew.home.license
|
logoInfoNew.home.license
|
||||||
}}
|
}}
|
||||||
</span> {{
|
</span> {{
|
||||||
@ -110,6 +109,8 @@ import Vue from 'vue'
|
|||||||
import TopBox from "@/views/homePage/components/topBox/index.vue";
|
import TopBox from "@/views/homePage/components/topBox/index.vue";
|
||||||
import {reqNewHomeFestival} from "@/api/newHome";
|
import {reqNewHomeFestival} from "@/api/newHome";
|
||||||
import {mapGetters, mapState} from "vuex";
|
import {mapGetters, mapState} from "vuex";
|
||||||
|
// 导入语言管理
|
||||||
|
import { languageStore, languageBus } from '@/utils/language'
|
||||||
|
|
||||||
export default Vue.extend({
|
export default Vue.extend({
|
||||||
name: "indexLast",
|
name: "indexLast",
|
||||||
@ -117,6 +118,52 @@ export default Vue.extend({
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
currentBaseMenu: "hot", // 默认选中热门推荐
|
currentBaseMenu: "hot", // 默认选中热门推荐
|
||||||
|
language: 'zh',
|
||||||
|
languageChangedHandler: null,
|
||||||
|
translations: {
|
||||||
|
zh: {
|
||||||
|
address: '地址',
|
||||||
|
email: '邮箱',
|
||||||
|
phone: '电话',
|
||||||
|
wechatCustomerService: '微信客服',
|
||||||
|
followOfficialAccount: '关注公众号',
|
||||||
|
icpRecord: '京ICP备',
|
||||||
|
aboutUs: '关于我们',
|
||||||
|
companyIntro: '公司介绍',
|
||||||
|
products: '产品',
|
||||||
|
baiduCloud: '百度云',
|
||||||
|
aliCloud: '阿里云',
|
||||||
|
kaiyuanCloud: '开元云',
|
||||||
|
solutions: '解决方案',
|
||||||
|
biomedicine: '生物医药',
|
||||||
|
serviceSupport: '服务与支持',
|
||||||
|
modelFineTuning: '模型微调',
|
||||||
|
modelApplication: '模型应用',
|
||||||
|
businessConsulting: '业务咨询',
|
||||||
|
joinKaiyuan: '加入开元'
|
||||||
|
},
|
||||||
|
en: {
|
||||||
|
address: 'Address',
|
||||||
|
email: 'Email',
|
||||||
|
phone: 'Phone',
|
||||||
|
wechatCustomerService: 'WeChat Customer Service',
|
||||||
|
followOfficialAccount: 'Follow Official Account',
|
||||||
|
icpRecord: 'ICP Record',
|
||||||
|
aboutUs: 'About Us',
|
||||||
|
companyIntro: 'Company Introduction',
|
||||||
|
products: 'Products',
|
||||||
|
baiduCloud: 'Baidu Cloud',
|
||||||
|
aliCloud: 'Ali Cloud',
|
||||||
|
kaiyuanCloud: 'Kaiyuan Cloud',
|
||||||
|
solutions: 'Solutions',
|
||||||
|
biomedicine: 'Biomedicine',
|
||||||
|
serviceSupport: 'Service & Support',
|
||||||
|
modelFineTuning: 'Model Fine-tuning',
|
||||||
|
modelApplication: 'Model Application',
|
||||||
|
businessConsulting: 'Business Consulting',
|
||||||
|
joinKaiyuan: 'Join Kaiyuan'
|
||||||
|
}
|
||||||
|
},
|
||||||
baseMenu: [
|
baseMenu: [
|
||||||
{
|
{
|
||||||
id: "hot",
|
id: "hot",
|
||||||
@ -151,6 +198,16 @@ export default Vue.extend({
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
// 修复:确保从共享状态获取当前语言
|
||||||
|
this.initLanguage()
|
||||||
|
},
|
||||||
|
beforeDestroy() {
|
||||||
|
// 移除事件监听
|
||||||
|
if (this.languageChangedHandler) {
|
||||||
|
languageBus.$off('language-changed', this.languageChangedHandler)
|
||||||
|
}
|
||||||
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapGetters(["sidebar", "avatar", "device"]),
|
...mapGetters(["sidebar", "avatar", "device"]),
|
||||||
...mapState({
|
...mapState({
|
||||||
@ -161,8 +218,6 @@ export default Vue.extend({
|
|||||||
logoutUrl: state => state.login.logoutUrl,
|
logoutUrl: state => state.login.logoutUrl,
|
||||||
loginState: state => state.login.loginState,
|
loginState: state => state.login.loginState,
|
||||||
logoInfoNew: state => state.product.logoInfoNew,
|
logoInfoNew: state => state.product.logoInfoNew,
|
||||||
|
|
||||||
|
|
||||||
}),
|
}),
|
||||||
showRegisterButton() {
|
showRegisterButton() {
|
||||||
const orgType = window.sessionStorage.getItem('org_type');
|
const orgType = window.sessionStorage.getItem('org_type');
|
||||||
@ -176,6 +231,22 @@ export default Vue.extend({
|
|||||||
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 初始化语言状态
|
||||||
|
initLanguage() {
|
||||||
|
// 直接从store获取当前语言,确保一致性
|
||||||
|
this.language = languageStore.getLanguage()
|
||||||
|
console.log('homeOut组件初始化语言:', this.language)
|
||||||
|
|
||||||
|
// 保存事件处理函数的引用,以便正确移除
|
||||||
|
this.languageChangedHandler = (lang) => {
|
||||||
|
console.log('homeOut组件接收到语言变化:', lang)
|
||||||
|
this.language = lang
|
||||||
|
}
|
||||||
|
|
||||||
|
// 监听语言变化事件
|
||||||
|
languageBus.$on('language-changed', this.languageChangedHandler)
|
||||||
|
},
|
||||||
|
|
||||||
goOut(url){
|
goOut(url){
|
||||||
window.open(url)
|
window.open(url)
|
||||||
},
|
},
|
||||||
@ -247,12 +318,9 @@ export default Vue.extend({
|
|||||||
height: 100%;
|
height: 100%;
|
||||||
overflow: auto !important;
|
overflow: auto !important;
|
||||||
min-width: 1500px;
|
min-width: 1500px;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
.footer {
|
.footer {
|
||||||
|
|
||||||
padding: 35px 0;
|
padding: 35px 0;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
display: flex;
|
display: flex;
|
||||||
@ -282,7 +350,6 @@ export default Vue.extend({
|
|||||||
font-size: 0.187rem;
|
font-size: 0.187rem;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
.qr-code {
|
.qr-code {
|
||||||
img {
|
img {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
@ -338,7 +405,6 @@ export default Vue.extend({
|
|||||||
}
|
}
|
||||||
|
|
||||||
.smallUl {
|
.smallUl {
|
||||||
|
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
color: #7A82A0;
|
color: #7A82A0;
|
||||||
|
|
||||||
@ -368,9 +434,11 @@ export default Vue.extend({
|
|||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
.goStyle {
|
.goStyle {
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
transition: all .3s ease-in-out;
|
transition: all .3s ease-in-out;
|
||||||
|
|
||||||
&:hover {
|
&:hover {
|
||||||
transition: all .3s ease-in-out;
|
transition: all .3s ease-in-out;
|
||||||
color: #1b5bff;
|
color: #1b5bff;
|
||||||
|
|||||||
@ -387,8 +387,8 @@ export default Vue.extend({
|
|||||||
netItem: {},
|
netItem: {},
|
||||||
suan: {},
|
suan: {},
|
||||||
suanItem: {},
|
suanItem: {},
|
||||||
// 从共享状态获取语言
|
language: 'zh',
|
||||||
language: languageStore.getLanguage(),
|
languageChangedHandler: null,
|
||||||
translations: {
|
translations: {
|
||||||
zh: {
|
zh: {
|
||||||
// Banner 区域
|
// Banner 区域
|
||||||
@ -550,10 +550,8 @@ export default Vue.extend({
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
// 监听语言变化事件
|
// 修复:确保从共享状态获取当前语言
|
||||||
languageBus.$on('language-changed', (lang) => {
|
this.initLanguage()
|
||||||
this.language = lang
|
|
||||||
})
|
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
// 监听滚动 控制sticky显示隐藏
|
// 监听滚动 控制sticky显示隐藏
|
||||||
@ -568,7 +566,9 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
beforeDestroy() {
|
beforeDestroy() {
|
||||||
// 移除事件监听
|
// 移除事件监听
|
||||||
languageBus.$off('language-changed')
|
if (this.languageChangedHandler) {
|
||||||
|
languageBus.$off('language-changed', this.languageChangedHandler)
|
||||||
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
...mapState({
|
...mapState({
|
||||||
@ -580,6 +580,22 @@ export default Vue.extend({
|
|||||||
},
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
// 初始化语言状态
|
||||||
|
initLanguage() {
|
||||||
|
// 直接从store获取当前语言,确保一致性
|
||||||
|
this.language = languageStore.getLanguage()
|
||||||
|
console.log('mainPage初始化语言:', this.language)
|
||||||
|
|
||||||
|
// 保存事件处理函数的引用,以便正确移除
|
||||||
|
this.languageChangedHandler = (lang) => {
|
||||||
|
console.log('mainPage接收到语言变化:', lang)
|
||||||
|
this.language = lang
|
||||||
|
}
|
||||||
|
|
||||||
|
// 监听语言变化事件
|
||||||
|
languageBus.$on('language-changed', this.languageChangedHandler)
|
||||||
|
},
|
||||||
|
|
||||||
// 获取粘性导航数据
|
// 获取粘性导航数据
|
||||||
getStickySections() {
|
getStickySections() {
|
||||||
return [
|
return [
|
||||||
@ -779,8 +795,7 @@ export default Vue.extend({
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
<style scoped lang="scss">
|
<style scoped lang="less">
|
||||||
// 原有的样式保持不变...
|
|
||||||
// 添加动画样式
|
// 添加动画样式
|
||||||
.slide-fade-enter-active {
|
.slide-fade-enter-active {
|
||||||
transition: all 0.3s ease;
|
transition: all 0.3s ease;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user