提交 9e2f8d3a authored 作者: 王鹏飞's avatar 王鹏飞

chore: update

上级 41b4d3b8
projectId=6800242743894343680 HOST='0.0.0.0'
PORT='2048'
baseURL=https://project-api.ezijing.com VITE_PROJECT_ID=6800242743894343680
VITE_API_BASE_URL=https://project-api.ezijing.com
loginURL=https://login.ezijing.com/auth VITE_LOGIN_URL=https://login.ezijing.com/auth
\ No newline at end of file \ No newline at end of file
# Created by .ignore support plugin (hsz.mobi) # Nuxt dev/build outputs
### Node template .output
# Logs
/logs
*.log
npm-debug.log*
yarn-debug.log*
yarn-error.log*
# Runtime data
pids
*.pid
*.seed
*.pid.lock
# Directory for instrumented libs generated by jscoverage/JSCover
lib-cov
# Coverage directory used by tools like istanbul
coverage
# nyc test coverage
.nyc_output
# Grunt intermediate storage (http://gruntjs.com/creating-plugins#storing-task-files)
.grunt
# Bower dependency directory (https://bower.io/)
bower_components
# node-waf configuration
.lock-wscript
# Compiled binary addons (https://nodejs.org/api/addons.html)
build/Release
# Dependency directories
node_modules/
jspm_packages/
# TypeScript v1 declaration files
typings/
# Optional npm cache directory
.npm
# Optional eslint cache
.eslintcache
# Optional REPL history
.node_repl_history
# Output of 'npm pack'
*.tgz
# Yarn Integrity file
.yarn-integrity
# dotenv environment variables file
# .env
# parcel-bundler cache (https://parceljs.org/)
.cache
# next.js build output
.next
# nuxt.js build output
.nuxt .nuxt
.nitro
# Nuxt generate .cache
dist dist
# vuepress build output # Node dependencies
.vuepress/dist node_modules
# Serverless directories
.serverless
# IDE / Editor
.idea
# Service worker # Logs
sw.* logs
*.log
# macOS # Misc
.DS_Store .DS_Store
.fleet
.idea
# Vim swap files # Local env files
*.swp .env
.env.*
!.env.example
shamefully-hoist=true
strict-peer-dependencies=false
# new-node-ezijing # Nuxt 3 Minimal Starter
## Build Setup Look at the [Nuxt 3 documentation](https://nuxt.com/docs/getting-started/introduction) to learn more.
## Setup
Make sure to install the dependencies:
```bash
# npm
npm install
# pnpm
pnpm install
# yarn
yarn install
```
## Development Server
Start the development server on `http://localhost:3000`:
```bash ```bash
# install dependencies # npm
$ npm install npm run dev
# serve with hot reload at localhost:3000 # pnpm
$ npm run dev pnpm run dev
# build for production and launch server # yarn
$ npm run build yarn dev
$ npm run start ```
## Production
Build the application for production:
```bash
# npm
npm run build
# generate static project # pnpm
$ npm run generate pnpm run build
# yarn
yarn build
``` ```
For detailed explanation on how things work, check out [Nuxt.js docs](https://nuxtjs.org). Locally preview production build:
```bash
# npm
npm run preview
# pnpm
pnpm run preview
# yarn
yarn preview
```
Check out the [deployment documentation](https://nuxt.com/docs/getting-started/deployment) for more information.
import httpRequest from '@/utils/httpRequest' import httpRequest from '@/utils/httpRequest'
const projectId = process.env.projectId const projectId = import.meta.env.VITE_PROJECT_ID
/** /**
* 获取用户信息 * 获取用户信息
...@@ -63,54 +63,38 @@ export function getApplicationStatus() { ...@@ -63,54 +63,38 @@ export function getApplicationStatus() {
* 获取支付二维码 * 获取支付二维码
*/ */
export function getOrder(params) { export function getOrder(params) {
return httpRequest.get( return httpRequest.get(`/api/enrollment/v1.0/application-materials/payment-records/request/${projectId}/APPLICATION_FEE`, { params })
`/api/enrollment/v1.0/application-materials/payment-records/request/${projectId}/APPLICATION_FEE`,
{ params }
)
} }
/** /**
* 检查支付状态 * 检查支付状态
*/ */
export function checkPay(id, params) { export function checkPay(id, params) {
return httpRequest.get( return httpRequest.get(`/api/enrollment/v1.0/application-materials/payment-records/check-status/${projectId}/APPLICATION_FEE/${id}`, { params })
`/api/enrollment/v1.0/application-materials/payment-records/check-status/${projectId}/APPLICATION_FEE/${id}`,
{ params }
)
} }
/** /**
* 写推荐信 * 写推荐信
*/ */
export function addLetter(userId, letterId, data) { export function addLetter(userId, letterId, data) {
return httpRequest.post( return httpRequest.post(`/api/enrollment/v1.0/application-materials/reco-letters/submit/${projectId}/${userId}/${letterId}/put`, data, {
`/api/enrollment/v1.0/application-materials/reco-letters/submit/${projectId}/${userId}/${letterId}/put`, headers: { 'Content-Type': 'application/json' }
data, })
{
headers: { 'Content-Type': 'application/json' }
}
)
} }
/** /**
* 更换推荐人 * 更换推荐人
*/ */
export function updateProvider(letterId, data) { export function updateProvider(letterId, data) {
return httpRequest.post( return httpRequest.post(`/api/enrollment/v1.0/application-materials/reco-letters/change-provider/${projectId}/${letterId}/put`, data, {
`/api/enrollment/v1.0/application-materials/reco-letters/change-provider/${projectId}/${letterId}/put`, headers: { 'Content-Type': 'application/json' }
data, })
{
headers: { 'Content-Type': 'application/json' }
}
)
} }
/** /**
* 再次邀请 * 再次邀请
*/ */
export function sendToProvider(letterId) { export function sendToProvider(letterId) {
return httpRequest.get( return httpRequest.get(`/api/enrollment/v1.0/application-materials/reco-letters/send-invitation-to-provider/${projectId}/${letterId}`)
`/api/enrollment/v1.0/application-materials/reco-letters/send-invitation-to-provider/${projectId}/${letterId}`
)
} }
/** /**
* 退出登录 * 退出登录
...@@ -123,10 +107,7 @@ export function logout() { ...@@ -123,10 +107,7 @@ export function logout() {
* 更改附件状态 * 更改附件状态
*/ */
export function changeFileStatus(userId, recordId, status) { export function changeFileStatus(userId, recordId, status) {
return httpRequest.get( return httpRequest.get(`/api/enrollment/v1.0/application-materials/attachments/change-status/${projectId}/${userId}/${recordId}`, { params: { status } })
`/api/enrollment/v1.0/application-materials/attachments/change-status/${projectId}/${userId}/${recordId}`,
{ params: { status } }
)
} }
/** /**
......
<!DOCTYPE html>
<html {{ HTML_ATTRS }}>
<head>
<meta name="baidu-site-verification" content="code-DUTex50XOJ" />
{{ HEAD }}
</head>
<body {{ BODY_ATTRS }}>
{{ APP }}
<script>
var _hmt = _hmt || []
;(function() {
var hm = document.createElement('script')
hm.src = 'https://hm.baidu.com/hm.js?d07ebd7fc0b0319273df23497cf520d2'
var s = document.getElementsByTagName('script')[0]
s.parentNode.insertBefore(hm, s)
})()
</script>
</body>
</html>
import { Message } from 'element-ui' import { ElMessage } from 'element-plus'
export const roadMapList = [ export const roadMapList = [
{ {
project_name: '项目名称:', project_name: '项目名称:',
...@@ -41,7 +41,7 @@ export const roadMapList = [ ...@@ -41,7 +41,7 @@ export const roadMapList = [
tenant: '', tenant: '',
name: '国际大一(1+3)即将推出', name: '国际大一(1+3)即将推出',
onClick() { onClick() {
Message('即将推出') ElMessage('即将推出')
} }
} }
], ],
...@@ -166,7 +166,7 @@ export const homeMapList = [ ...@@ -166,7 +166,7 @@ export const homeMapList = [
name: '高管培训-数字创新管理', name: '高管培训-数字创新管理',
onClick() { onClick() {
Message('敬请期待') ElMessage('敬请期待')
} }
}, },
{ {
......
import fs from 'node:fs'
import path from 'node:path'
import axios from 'axios'
const __dirname = path.resolve()
const domain = 'ezijing.com'
const outputPath = './https'
// 生成文件夹
function genOutputDir() {
if (fs.existsSync(outputPath)) {
console.log('The path exists.')
} else {
fs.mkdir(outputPath, { recursive: true }, err => {
if (err) throw err
})
}
}
function downloadCertFile() {
genOutputDir()
axios.get(`https://ssl.godzyx.com/${domain}/${domain}.key?get=allow`, { responseType: 'stream' }).then(response => {
response.data.pipe(fs.createWriteStream(path.join(__dirname, `${outputPath}/${domain}.key`)))
})
axios.get(`https://ssl.godzyx.com/${domain}/${domain}.pem?get=allow`, { responseType: 'stream' }).then(response => {
response.data.pipe(fs.createWriteStream(path.join(__dirname, `${outputPath}/${domain}.pem`)))
})
}
downloadCertFile()
...@@ -29,7 +29,7 @@ export default { ...@@ -29,7 +29,7 @@ export default {
}, },
async fetch() { async fetch() {
const params = { const params = {
project_id: process.env.projectId, project_id: import.meta.env.VITE_PROJECT_ID,
type_tag: 'article_news_hot', type_tag: 'article_news_hot',
is_recommend: 1, is_recommend: 1,
page: 1, page: 1,
......
...@@ -35,8 +35,8 @@ ...@@ -35,8 +35,8 @@
</div> </div>
<div class="head-nav-content max-width-content"> <div class="head-nav-content max-width-content">
<ul :class="{ 'nav-item-box': true, isEn: isEn }" @mouseleave="navLeave"> <ul :class="{ 'nav-item-box': true, isEn: isEn }" @mouseleave="navLeave">
<template v-for="(item, index) in navData"> <template v-for="(item, index) in navData" :key="index">
<li :key="index"> <li>
<div :class="getNameActive(item)"> <div :class="getNameActive(item)">
<template v-if="!item.path"> <template v-if="!item.path">
<template v-if="item.click"> <template v-if="item.click">
...@@ -51,10 +51,9 @@ ...@@ -51,10 +51,9 @@
<div class="child-item" v-if="item.childern"> <div class="child-item" v-if="item.childern">
<div class="one-level"> <div class="one-level">
<template v-for="(level2Item, level2Index) in item.childern"> <template v-for="(level2Item, level2Index) in item.childern" :key="level2Index + 'level2'">
<div <div
:class="$route.path === level2Item.path || level2Item.isShow ? 'li active' : 'li'" :class="$route.path === level2Item.path || level2Item.isShow ? 'li active' : 'li'"
:key="level2Index + 'level2'"
@mouseenter="levelShow(level2Item)" @mouseenter="levelShow(level2Item)"
@mouseleave="levelShow(level2Item, 'out')"> @mouseleave="levelShow(level2Item, 'out')">
<div @click="goPage(level2Item.path, level2Item.pathType)" class="name" :class="isEn === true ? 'name1' : ''" v-html="level2Item.name"></div> <div @click="goPage(level2Item.path, level2Item.pathType)" class="name" :class="isEn === true ? 'name1' : ''" v-html="level2Item.name"></div>
...@@ -533,10 +532,10 @@ export default { ...@@ -533,10 +532,10 @@ export default {
return this.$store.state.user || {} return this.$store.state.user || {}
}, },
loginURL() { loginURL() {
return process.client ? `${process.env.loginURL}/login/index?redirect_uri=${encodeURIComponent(location.origin + this.$route.fullPath)}` : '' return process.client ? `${import.meta.env.VITE_LOGIN_URL}/login/index?redirect_uri=${encodeURIComponent(location.origin + this.$route.fullPath)}` : ''
}, },
registerURL() { registerURL() {
return process.client ? `${process.env.loginURL}/register?redirect_uri=${encodeURIComponent(location.origin + this.$route.fullPath)}` : '' return process.client ? `${import.meta.env.VITE_LOGIN_URL}/register?redirect_uri=${encodeURIComponent(location.origin + this.$route.fullPath)}` : ''
} }
} }
} }
......
...@@ -31,12 +31,10 @@ export default { ...@@ -31,12 +31,10 @@ export default {
props: { baseUrl: String, default: '/about/news', params: Object }, props: { baseUrl: String, default: '/about/news', params: Object },
components: { AppCard, AppLink }, components: { AppCard, AppLink },
async fetch() { async fetch() {
const params = this.params || { project_id: process.env.projectId, type_tag: 'article_news_hot', page: 1, limit: 4 } const params = this.params || { project_id: import.meta.env.VITE_PROJECT_ID, type_tag: 'article_news_hot', page: 1, limit: 4 }
await this.$axios await this.$axios.get('/api/cms/api/v1/articles', { params, headers: { 'Content-Type': 'application/json' } }).then(res => {
.get('/api/cms/api/v1/articles', { params, headers: { 'Content-Type': 'application/json' } }) this.data = res.data.data || []
.then(res => { })
this.data = res.data.data || []
})
}, },
data() { data() {
return { return {
......
...@@ -33,7 +33,7 @@ export default { ...@@ -33,7 +33,7 @@ export default {
}, },
async fetch() { async fetch() {
const params = { const params = {
project_id: process.env.projectId, project_id: import.meta.env.VITE_PROJECT_ID,
type_tag: 'article_alumni' type_tag: 'article_alumni'
} }
this.listData = await this.$axios.get('/api/cms/api/v1/articles', { params }).then(res => { this.listData = await this.$axios.get('/api/cms/api/v1/articles', { params }).then(res => {
......
...@@ -12,10 +12,8 @@ ...@@ -12,10 +12,8 @@
</template> </template>
</swiper-slide> </swiper-slide>
</swiper> </swiper>
<template v-if="!isMobile"> <div class="prev-button"></div>
<div class="prev-button"></div> <div class="next-button"></div>
<div class="next-button"></div>
</template>
</div> </div>
</template> </template>
<script> <script>
...@@ -39,13 +37,8 @@ export default { ...@@ -39,13 +37,8 @@ export default {
} }
}, },
async fetch() { async fetch() {
const params = { project_id: process.env.projectId, type_tag: 'ad_banner' } const params = { project_id: import.meta.env.VITE_PROJECT_ID, type_tag: 'ad_banner' }
this.listData = await this.$axios.get('/api/cms/api/v1/advertisements', { params }).then(res => res.data.data) this.listData = await this.$axios.get('/api/cms/api/v1/advertisements', { params }).then(res => res.data.data)
},
computed: {
isMobile() {
return this.$store.state.isMobile
}
} }
} }
</script> </script>
......
...@@ -60,7 +60,7 @@ export default { ...@@ -60,7 +60,7 @@ export default {
}, },
async fetch() { async fetch() {
const params = { const params = {
// project_id: process.env.projectId, // project_id: import.meta.env.VITE_PROJECT_ID,
project_id: '6800242743894343680', project_id: '6800242743894343680',
type_tag: 'img_text_school' type_tag: 'img_text_school'
} }
......
...@@ -23,7 +23,7 @@ ...@@ -23,7 +23,7 @@
<div class="main_content"> <div class="main_content">
<div class="time"> <div class="time">
<div class="date">{{ formatDate(item.start_time) }}</div> <div class="date">{{ formatDate(item.start_time) }}</div>
<div class="year ">{{ formatYear(item.start_time) }}</div> <div class="year">{{ formatYear(item.start_time) }}</div>
</div> </div>
<div class="content_right"> <div class="content_right">
<div class="tit">{{ item.title }}</div> <div class="tit">{{ item.title }}</div>
...@@ -60,7 +60,7 @@ export default { ...@@ -60,7 +60,7 @@ export default {
}, },
async fetch() { async fetch() {
const params = { const params = {
project_id: process.env.projectId, project_id: import.meta.env.VITE_PROJECT_ID,
type_tag: 'article_publish_class', type_tag: 'article_publish_class',
page: 1, page: 1,
limit: 5 limit: 5
......
...@@ -9,25 +9,23 @@ ...@@ -9,25 +9,23 @@
<div class="news-content"> <div class="news-content">
<div class="left-content"> <div class="left-content">
<div class="list"> <div class="list">
<div v-swiper:mySwiper="swiperOption" ref="mySwiper" class="swiper-no-swiping"> <swiper v-bind="swiperOption" class="swiper-no-swiping">
<div class="swiper-wrapper"> <SwiperSlide class="swiper-slide" v-for="(item, index) in activityList" :key="index">
<div class="swiper-slide" v-for="(item, index) in activityList" :key="index"> <div class="li">
<div class="li"> <div class="time-block">
<div class="time-block"> <div class="m-time">{{ formatMD(item.abstract) }}</div>
<div class="m-time">{{ formatMD(item.abstract) }}</div> <div class="t-time">{{ formatYY(item.abstract) }}</div>
<div class="t-time">{{ formatYY(item.abstract) }}</div>
</div>
<div class="txt">{{ item.title }}</div>
</div> </div>
<div class="txt">{{ item.title }}</div>
</div> </div>
</div> </SwiperSlide>
</div> </swiper>
</div> </div>
</div> </div>
<div class="right-content"> <div class="right-content">
<ul> <ul>
<template v-for="(item, index) in listData"> <template v-for="(item, index) in listData" :key="index">
<app-link :key="index" :data="item" :to="`/about/news/${item.id}`"> <app-link :data="item" :to="`/about/news/${item.id}`">
<li> <li>
<div class="time-block"> <div class="time-block">
<div class="m-time"> <div class="m-time">
...@@ -74,7 +72,7 @@ export default { ...@@ -74,7 +72,7 @@ export default {
}, },
async fetch() { async fetch() {
const params = { const params = {
project_id: process.env.projectId, project_id: import.meta.env.VITE_PROJECT_ID,
type_tag: 'article_news', type_tag: 'article_news',
page: 1, page: 1,
limit: 3 limit: 3
...@@ -97,7 +95,7 @@ export default { ...@@ -97,7 +95,7 @@ export default {
}, },
getActivity() { getActivity() {
const params = { const params = {
project_id: process.env.projectId, project_id: import.meta.env.VITE_PROJECT_ID,
type_tag: 'www_activity' type_tag: 'www_activity'
} }
this.$axios.get('/api/cms/api/v1/articles', { params }).then(res => { this.$axios.get('/api/cms/api/v1/articles', { params }).then(res => {
...@@ -128,12 +126,10 @@ export default { ...@@ -128,12 +126,10 @@ export default {
} }
.list { .list {
overflow: hidden; overflow: hidden;
::v-deep { :deep(.swiper-container) {
.swiper-container { height: 100%;
height: 100%;
// transform: translateY(-2px);
}
} }
.swiper-slide-active { .swiper-slide-active {
.li { .li {
border-bottom: 1px solid #999999; border-bottom: 1px solid #999999;
......
...@@ -44,7 +44,7 @@ export default { ...@@ -44,7 +44,7 @@ export default {
}, },
async fetch() { async fetch() {
const params = { const params = {
project_id: process.env.projectId, project_id: import.meta.env.VITE_PROJECT_ID,
type_tag: 'service_case' type_tag: 'service_case'
} }
this.listData = await this.$axios.get('/api/cms/api/v1/articles', { params }).then(res => { this.listData = await this.$axios.get('/api/cms/api/v1/articles', { params }).then(res => {
......
<template> <template>
<div class="right_bar"> <div class="right_bar">
<ul class="tab_btns"> <ul class="tab_btns">
<li <li :class="{ enroll: true, active: tabBtnActive && tabBtnTarget === 'enroll' }" @mouseenter="handleMsOver('enroll')" @mouseleave="handleMsOut">
:class="{ enroll: true, active: tabBtnActive && tabBtnTarget === 'enroll' }"
@mouseenter="handleMsOver('enroll')"
@mouseleave="handleMsOut">
<p>{{ $t('aside.apply') }}</p> <p>{{ $t('aside.apply') }}</p>
</li> </li>
<li <li :class="{ wx: true, active: tabBtnActive && tabBtnTarget === 'wx' }" @mouseenter="handleMsOver('wx')" @mouseleave="handleMsOut">
:class="{ wx: true, active: tabBtnActive && tabBtnTarget === 'wx' }"
@mouseenter="handleMsOver('wx')"
@mouseleave="handleMsOut">
<p>{{ $t('aside.follow') }}</p> <p>{{ $t('aside.follow') }}</p>
</li> </li>
</ul> </ul>
<transition <transition name="custom-classes-transition" enter-active-class="animated tada" leave-active-class="animated bounceOutRight">
name="custom-classes-transition" <div id="show-enroll" v-show="tabBtnActive" class="tab_cont" @mouseenter="handleMsOver('')" @mouseleave="handleMsOut">
enter-active-class="animated tada"
leave-active-class="animated bounceOutRight">
<div
id="show-enroll"
v-show="tabBtnActive"
class="tab_cont"
@mouseenter="handleMsOver('')"
@mouseleave="handleMsOut">
<div class="enroll_cont" id="show-enroll-content" v-show="tabBtnTarget === 'enroll'"> <div class="enroll_cont" id="show-enroll-content" v-show="tabBtnTarget === 'enroll'">
<h5>{{ $t('aside.apply') }}</h5> <h5>{{ $t('aside.apply') }}</h5>
<div class="p"> <div class="p">
...@@ -41,9 +27,7 @@ ...@@ -41,9 +27,7 @@
<div class="p"> <div class="p">
<el-input v-model="sendCode" :placeholder="$t('aside.code')"> <el-input v-model="sendCode" :placeholder="$t('aside.code')">
<template #append> <template #append>
<el-button class="btn" :disabled="isBtnDisabled" id="checkedCode" @click="getSendCode">{{ <el-button class="btn" :disabled="isBtnDisabled" id="checkedCode" @click="getSendCode">{{ $t('aside.codeBtn') }}</el-button>
$t('aside.codeBtn')
}}</el-button>
</template> </template>
</el-input> </el-input>
</div> </div>
...@@ -322,12 +306,12 @@ export default { ...@@ -322,12 +306,12 @@ export default {
.p { .p {
margin-bottom: 15px; margin-bottom: 15px;
position: relative; position: relative;
::v-deep(.el-input__inner) { :deep(.el-input__inner) {
border: 1px solid #ccc; border: 1px solid #ccc;
line-height: 44px; line-height: 44px;
height: 44px; height: 44px;
} }
::v-deep(.el-select) { :deep(.el-select) {
width: 100%; width: 100%;
} }
select { select {
......
...@@ -3,20 +3,18 @@ ...@@ -3,20 +3,18 @@
<div class="content-mian"> <div class="content-mian">
<div class="enroll-box"> <div class="enroll-box">
<div class="left-content"> <div class="left-content">
<div class="tit">马上申请<br>加入未来管理者项目</div> <div class="tit">马上申请<br />加入未来管理者项目</div>
<div class="tips">温馨提示:仅本科及以上学历可报名</div> <div class="tips">温馨提示:仅本科及以上学历可报名</div>
</div> </div>
<div class="right-content"> <div class="right-content">
<div class="li"> <div class="li">
<el-select v-model="form.years" placeholder="请选择工作年限"> <el-select v-model="form.years" placeholder="请选择工作年限">
<el-option v-for="item in yearsOptions" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="item in yearsOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option>
</el-option>
</el-select> </el-select>
</div> </div>
<div class="li"> <div class="li">
<el-select v-model="form.degree" placeholder="请选择学历/学位"> <el-select v-model="form.degree" placeholder="请选择学历/学位">
<el-option v-for="item in degreeOptions" :key="item.value" :label="item.label" :value="item.value"> <el-option v-for="item in degreeOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option>
</el-option>
</el-select> </el-select>
</div> </div>
<div class="li"> <div class="li">
...@@ -84,14 +82,13 @@ export default { ...@@ -84,14 +82,13 @@ export default {
name: '', name: '',
phone: '', phone: '',
// channel: 19960, // channel: 19960,
project_id: process.env.projectId project_id: import.meta.env.VITE_PROJECT_ID
}, },
value: '' value: ''
} }
}, },
mounted() {}, mounted() {},
methods: { methods: {}
}
} }
</script> </script>
...@@ -136,10 +133,8 @@ export default { ...@@ -136,10 +133,8 @@ export default {
box-sizing: border-box; box-sizing: border-box;
padding: 30px 56px 56px 64px; padding: 30px 56px 56px 64px;
margin-right: 56px; margin-right: 56px;
::v-deep { :deep(.el-select) {
.el-select { width: 100%;
width: 100%;
}
} }
.li { .li {
margin-bottom: 20px; margin-bottom: 20px;
...@@ -154,13 +149,13 @@ export default { ...@@ -154,13 +149,13 @@ export default {
text-align: center; text-align: center;
cursor: pointer; cursor: pointer;
} }
.tips{ .tips {
color:#a9a9a9; color: #a9a9a9;
line-height:30px; line-height: 30px;
text-align:center; text-align: center;
} }
} }
} }
} }
} }
</style> </style>
\ No newline at end of file
import zhCN from '@/langs/zh-CN'
import enUS from '@/langs/en-US'
export default defineI18nConfig(() => ({
legacy: false,
locale: 'zh-CN',
warnHtmlMessage: false,
messages: { 'zh-CN': zhCN, 'en-US': enUS }
}))
<template> <template>
<div class="is-pc"> <div class="is-pc">
<Head class="heads" /> <Header />
<Nuxt /> <slot />
<Foot /> <Foot />
<RightAside /> <RightAside />
</div> </div>
...@@ -9,21 +9,6 @@ ...@@ -9,21 +9,6 @@
<script> <script>
export default { export default {
mounted() { mounted() {
pushHistory()
window.addEventListener(
'popstate',
function(e) {
window.location.reload()
},
false
)
function pushHistory() {
var state = {
title: 'title',
url: ''
}
window.history.pushState(state, 'title', '')
}
if (this.$route.query.channel_num) { if (this.$route.query.channel_num) {
localStorage.setItem('channel_num', this.$route.query.channel_num) localStorage.setItem('channel_num', this.$route.query.channel_num)
} }
...@@ -32,8 +17,7 @@ export default { ...@@ -32,8 +17,7 @@ export default {
</script> </script>
<style> <style>
html { html {
font-family: 'Source Sans Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, font-family: 'Source Sans Pro', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
sans-serif;
font-size: 16px; font-size: 16px;
word-spacing: 1px; word-spacing: 1px;
-ms-text-size-adjust: 100%; -ms-text-size-adjust: 100%;
......
import path from 'path'
import fs from 'fs'
export default {
env: process.env,
server: { port: 2048, host: '0.0.0.0' },
...(process.env.NODE_ENV === 'development' && {
server: {
host: 'dev.ezijing.com',
https: {
key: fs.readFileSync(path.resolve(__dirname, 'dev.ezijing.com.key')),
cert: fs.readFileSync(path.resolve(__dirname, 'dev.ezijing.com.pem'))
}
}
}),
// Global page headers: https://go.nuxtjs.dev/config-head
head: {
title: '紫荆教育-在线学位,国际留学,数字经济产业学院',
htmlAttrs: {
lang: 'en'
},
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', id: 'viewport', content: 'initial-scale=-1,maximum-scale=1,shrink-to-fit=no' },
{
hid: 'keywords',
name: 'keywords',
content:
'工商管理硕士,MBA硕士,免联考MBA,国际MBA,通用MBA,在职MBA,在线MBA,MBA,美国MBA,金融硕士,金融硕士,心理学硕士,应用心理学硕士,在职心理学硕士,国际金融硕士,在职金融硕士,在线心理学硕士,在职金融硕士,国际金融硕士,美国金融硕士,在职应用心理学硕士,金融硕士学位,美国心理学硕士,在职工商管理硕士,酒店管理硕士,在职酒店管理硕士,理财规划师,企业理财顾问师,投资理财顾问,金融理财师,理财培训,企业融资,国家理财规划师,财富管理,资产管理,个人财富管理,证券投资,信托投资,私人财富风险管理顾问'
},
{
hid: 'description',
name: 'description',
content:
'紫荆教育全称是清控紫荆(北京)教育科技股份有限公司,是2015年以清华大学五道口金融学院相关知识产权创设而成。提供国际在线学位教育、国际留学、数字经济产业学院整体解决方案等产品服务,为各行各业培养和输送高质量的国际化和产业化人才'
}
],
link: [
{
rel: 'icon',
type: 'image/x-icon',
href: 'https://zws-imgs-pub.ezijing.com/static/public/f56441ae1441902080226712d4d650aa.ico'
}
]
},
// Global CSS: https://go.nuxtjs.dev/config-css
css: ['assets/theme/index.css', 'assets/css/base.css'],
// Plugins to run before rendering page: https://go.nuxtjs.dev/config-plugins
plugins: [
'@/plugins/i18n',
'@/plugins/axios',
'@/plugins/element-ui',
{
// 引入一个插件,这里的 ssr 表示使用服务端渲染
src: 'plugins/vue-swiper.js'
}
],
// Auto import components: https://go.nuxtjs.dev/config-components
components: true,
// Modules for dev and build (recommended): https://go.nuxtjs.dev/config-modules
buildModules: [],
// Modules: https://go.nuxtjs.dev/config-modules
modules: ['cookie-universal-nuxt'],
// Build Configuration: https://go.nuxtjs.dev/config-build
build: {
transpile: [/^element-ui/]
},
router: {
middleware: ['device', 'i18n', 'route']
}
// proxy: {
// '/api': {
// target: 'https://project-api.ezijing.com/api',
// selfHandleResponse: false,
// secure: false,
// changeOrigin: true,
// followRedirects: true,
// logLevel: 'info',
// headers: {
// 'Referer': 'https://project-api.ezijing.com/api'
// },
// pathRewrite: {
// '^/api': '/'
// }
// }
// }
}
// https://nuxt.com/docs/api/configuration/nuxt-config
export default defineNuxtConfig({
devtools: { enabled: false },
devServer: {
port: 3000,
host: 'dev.ezijing.com',
https: { key: './https/ezijing.com.key', cert: './https/ezijing.com.pem' }
},
app: {
head: {
title: '紫荆教育-在线学位,国际留学,数字经济产业学院',
meta: [
{ charset: 'utf-8' },
{ name: 'viewport', id: 'viewport', content: 'initial-scale=-1,maximum-scale=1,shrink-to-fit=no' },
{
hid: 'keywords',
name: 'keywords',
content:
'工商管理硕士,MBA硕士,免联考MBA,国际MBA,通用MBA,在职MBA,在线MBA,MBA,美国MBA,金融硕士,金融硕士,心理学硕士,应用心理学硕士,在职心理学硕士,国际金融硕士,在职金融硕士,在线心理学硕士,在职金融硕士,国际金融硕士,美国金融硕士,在职应用心理学硕士,金融硕士学位,美国心理学硕士,在职工商管理硕士,酒店管理硕士,在职酒店管理硕士,理财规划师,企业理财顾问师,投资理财顾问,金融理财师,理财培训,企业融资,国家理财规划师,财富管理,资产管理,个人财富管理,证券投资,信托投资,私人财富风险管理顾问'
},
{
hid: 'description',
name: 'description',
content:
'紫荆教育全称是清控紫荆(北京)教育科技股份有限公司,是2015年以清华大学五道口金融学院相关知识产权创设而成。提供国际在线学位教育、国际留学、数字经济产业学院整体解决方案等产品服务,为各行各业培养和输送高质量的国际化和产业化人才'
}
],
link: [
{
rel: 'icon',
type: 'image/x-icon',
href: 'https://zws-imgs-pub.ezijing.com/static/public/f56441ae1441902080226712d4d650aa.ico'
}
]
}
},
modules: ['@nuxtjs/i18n', 'nuxt-swiper'],
i18n: { vueI18n: './i18n.config.ts' },
css: ['assets/theme/index.css', 'assets/css/base.css']
// router: {
// middleware: ['device', 'i18n', 'route']
// }
})
This source diff could not be displayed because it is too large. You can view the blob instead.
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
差异被折叠。
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论