1、element-plus 默认展示英文,如何进行国际化展示中文?
<template>
<div class="app">
<el-config-provider :locale="zhCn">
<router-view></router-view>
</el-config-provider>
</div>
</template>
<script lang="ts">
import { defineComponent } from 'vue'
import { ElConfigProvider } from 'element-plus'
import zhCn from 'element-plus/lib/locale/lang/zh-cn'
export default defineComponent({
name: 'App',
components: {
ElConfigProvider
},
props: {
name: {
type: String
}
},
setup() {
return {
zhCn
}
}
})
</script>
2、如何给vue添加全局方法或者属性?
- app.config.globalProperties
import { App } from 'vue'
import { formatUtcString } from '@/utils/date-format'
export default function registerProperties(app: App) {
app.config.globalProperties.$filters = {
foo() {
console.log('foo')
},
formatTime(value: string) {
return formatUtcString(value)
}
}
}
3、dayjs第三方库的使用?
import dayjs from 'dayjs'
import utc from 'dayjs/plugin/utc'
dayjs.extend(utc)
const DATE_TIME_FORMAT = 'YYYY-MM-DD HH:mm:ss'
export function formatUtcString(
utcString: string,
format: string = DATE_TIME_FORMAT
) {
return dayjs.utc(utcString).format(format)
}
export function formatTimestamp(
timestamp: number,
format: string = DATE_TIME_FORMAT
) {
return ''
}
4、经典的三层封装思想是什么?
- 基础组件层
- 中转层
-
使用层
5、思考网络请求放哪里?
- 目前网络请求都放在 vuex 的 actions中