@xiaonoodles/meetfun-i18n 1.2.16 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/FIX_WEBPACK_RESOLUTION.md +245 -245
- package/LICENSE +22 -22
- package/MIGRATION_GUIDE.md +253 -253
- package/README.md +482 -482
- package/TROUBLESHOOTING.md +280 -280
- package/VERIFY_FIX.md +272 -272
- package/VUE2_USAGE.md +170 -170
- package/dist/index.esm.js +40 -16
- package/dist/index.esm.js.map +1 -1
- package/dist/index.js +40 -16
- package/dist/index.js.map +1 -1
- package/dist/vue2/index.cjs +2589 -17
- package/dist/vue2/index.cjs.map +1 -1
- package/dist/vue2/index.esm.js +2575 -3
- package/dist/vue2/index.esm.js.map +1 -1
- package/package.json +78 -78
- package/vue2/index.d.ts +3 -3
- package/vue2/index.js +3 -3
- package/vue2/index.mjs +4 -4
- package/vue2/package.json +14 -14
- package/vue2.d.ts +3 -3
- package/vue2.mjs +13 -13
package/MIGRATION_GUIDE.md
CHANGED
|
@@ -1,253 +1,253 @@
|
|
|
1
|
-
# Vue2/Vue3 迁移指南
|
|
2
|
-
|
|
3
|
-
本文档帮助您在 Vue2 和 Vue3 项目之间迁移使用 meetfun-i18n。
|
|
4
|
-
|
|
5
|
-
## 快速对比
|
|
6
|
-
|
|
7
|
-
| 特性 | Vue2 | Vue3 |
|
|
8
|
-
|------|------|------|
|
|
9
|
-
| **引入方式** | `import { createMeetFunI18n } from 'meetfun-i18n/vue2'` | `import { createMeetFunI18n } from 'meetfun-i18n'` |
|
|
10
|
-
| **Vue 版本** | Vue 2.7+ | Vue 3.x |
|
|
11
|
-
| **vue-i18n 版本** | 8.x | 9.x |
|
|
12
|
-
| **安装方式** | `Vue.use(i18n)` | `app.use(i18n)` |
|
|
13
|
-
| **API 使用** | 完全相同 ✅ | 完全相同 ✅ |
|
|
14
|
-
|
|
15
|
-
## Vue2 项目示例
|
|
16
|
-
|
|
17
|
-
### 1. 安装依赖
|
|
18
|
-
|
|
19
|
-
```bash
|
|
20
|
-
pnpm add meetfun-i18n vue@^2.7.0 vue-i18n@^8.0.0
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
### 2. 初始化
|
|
24
|
-
|
|
25
|
-
```javascript
|
|
26
|
-
// src/locales/index.js
|
|
27
|
-
import { createMeetFunI18n } from 'meetfun-i18n/vue2'
|
|
28
|
-
import zhHans from './zh-Hans.json'
|
|
29
|
-
import en from './en.json'
|
|
30
|
-
import { queryLangDictHotData, queryLangDictColdData } from '@/api/translate'
|
|
31
|
-
|
|
32
|
-
const baseMessages = {
|
|
33
|
-
'zh-Hans': zhHans,
|
|
34
|
-
en: en,
|
|
35
|
-
}
|
|
36
|
-
|
|
37
|
-
const apiConfig = {
|
|
38
|
-
queryLangDictHotData,
|
|
39
|
-
queryLangDictColdData,
|
|
40
|
-
}
|
|
41
|
-
|
|
42
|
-
export default createMeetFunI18n(baseMessages, apiConfig, {
|
|
43
|
-
defaultLocale: 'zh-Hans',
|
|
44
|
-
systemCode: 'YOUR_SYSTEM_CODE',
|
|
45
|
-
})
|
|
46
|
-
```
|
|
47
|
-
|
|
48
|
-
### 3. 在 main.js 中安装
|
|
49
|
-
|
|
50
|
-
```javascript
|
|
51
|
-
// main.js
|
|
52
|
-
import Vue from 'vue'
|
|
53
|
-
import App from './App.vue'
|
|
54
|
-
import i18nInstance from './locales'
|
|
55
|
-
|
|
56
|
-
// 安装 vue-i18n
|
|
57
|
-
Vue.use(i18nInstance.getI18n())
|
|
58
|
-
|
|
59
|
-
// 可选:挂载到原型
|
|
60
|
-
Vue.prototype.$i18nInstance = i18nInstance
|
|
61
|
-
|
|
62
|
-
new Vue({
|
|
63
|
-
i18n: i18nInstance.getI18n(),
|
|
64
|
-
render: h => h(App)
|
|
65
|
-
}).$mount('#app')
|
|
66
|
-
```
|
|
67
|
-
|
|
68
|
-
### 4. 在组件中使用
|
|
69
|
-
|
|
70
|
-
```vue
|
|
71
|
-
<template>
|
|
72
|
-
<view>
|
|
73
|
-
<text>{{ $t('welcomeMessage') }}</text>
|
|
74
|
-
<button @click="changeLanguage">切换语言</button>
|
|
75
|
-
</view>
|
|
76
|
-
</template>
|
|
77
|
-
|
|
78
|
-
<script>
|
|
79
|
-
export default {
|
|
80
|
-
methods: {
|
|
81
|
-
changeLanguage() {
|
|
82
|
-
this.$i18nInstance.switchLocale('en')
|
|
83
|
-
}
|
|
84
|
-
}
|
|
85
|
-
}
|
|
86
|
-
</script>
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
## Vue3 项目示例
|
|
90
|
-
|
|
91
|
-
### 1. 安装依赖
|
|
92
|
-
|
|
93
|
-
```bash
|
|
94
|
-
pnpm add meetfun-i18n vue@^3.0.0 vue-i18n@^9.0.0
|
|
95
|
-
```
|
|
96
|
-
|
|
97
|
-
### 2. 初始化
|
|
98
|
-
|
|
99
|
-
```typescript
|
|
100
|
-
// src/locales/index.ts
|
|
101
|
-
import { createMeetFunI18n } from 'meetfun-i18n'
|
|
102
|
-
import zhHans from './zh-Hans.json'
|
|
103
|
-
import en from './en.json'
|
|
104
|
-
import { queryLangDictHotData, queryLangDictColdData } from '@/api/translate'
|
|
105
|
-
|
|
106
|
-
const baseMessages = {
|
|
107
|
-
'zh-Hans': zhHans,
|
|
108
|
-
en: en,
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
const apiConfig = {
|
|
112
|
-
queryLangDictHotData,
|
|
113
|
-
queryLangDictColdData,
|
|
114
|
-
}
|
|
115
|
-
|
|
116
|
-
export default createMeetFunI18n(baseMessages, apiConfig, {
|
|
117
|
-
defaultLocale: 'zh-Hans',
|
|
118
|
-
systemCode: 'YOUR_SYSTEM_CODE',
|
|
119
|
-
})
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
### 3. 在 main.ts 中安装
|
|
123
|
-
|
|
124
|
-
```typescript
|
|
125
|
-
// main.ts
|
|
126
|
-
import { createSSRApp } from 'vue'
|
|
127
|
-
import App from './App.vue'
|
|
128
|
-
import i18nInstance from './locales'
|
|
129
|
-
|
|
130
|
-
export function createApp() {
|
|
131
|
-
const app = createSSRApp(App)
|
|
132
|
-
|
|
133
|
-
// 安装 vue-i18n
|
|
134
|
-
app.use(i18nInstance.getI18n())
|
|
135
|
-
|
|
136
|
-
return {
|
|
137
|
-
app,
|
|
138
|
-
}
|
|
139
|
-
}
|
|
140
|
-
```
|
|
141
|
-
|
|
142
|
-
### 4. 在组件中使用
|
|
143
|
-
|
|
144
|
-
```vue
|
|
145
|
-
<template>
|
|
146
|
-
<view>
|
|
147
|
-
<text>{{ $t('welcomeMessage') }}</text>
|
|
148
|
-
<button @click="changeLanguage">切换语言</button>
|
|
149
|
-
</view>
|
|
150
|
-
</template>
|
|
151
|
-
|
|
152
|
-
<script setup lang="ts">
|
|
153
|
-
import i18nInstance from '@/locales'
|
|
154
|
-
|
|
155
|
-
const changeLanguage = () => {
|
|
156
|
-
i18nInstance.switchLocale('en')
|
|
157
|
-
}
|
|
158
|
-
</script>
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
## 从 Vue2 迁移到 Vue3
|
|
162
|
-
|
|
163
|
-
如果您的项目正在从 Vue2 升级到 Vue3,只需要:
|
|
164
|
-
|
|
165
|
-
### 步骤 1:更新引入路径
|
|
166
|
-
|
|
167
|
-
```typescript
|
|
168
|
-
// 之前 (Vue2)
|
|
169
|
-
import { createMeetFunI18n } from 'meetfun-i18n/vue2'
|
|
170
|
-
|
|
171
|
-
// 之后 (Vue3)
|
|
172
|
-
import { createMeetFunI18n } from 'meetfun-i18n'
|
|
173
|
-
```
|
|
174
|
-
|
|
175
|
-
### 步骤 2:更新依赖
|
|
176
|
-
|
|
177
|
-
```bash
|
|
178
|
-
# 卸载 Vue2 相关依赖
|
|
179
|
-
pnpm remove vue@2 vue-i18n@8
|
|
180
|
-
|
|
181
|
-
# 安装 Vue3 相关依赖
|
|
182
|
-
pnpm add vue@^3.0.0 vue-i18n@^9.0.0
|
|
183
|
-
```
|
|
184
|
-
|
|
185
|
-
### 步骤 3:更新 main 文件
|
|
186
|
-
|
|
187
|
-
```typescript
|
|
188
|
-
// 之前 (Vue2)
|
|
189
|
-
import Vue from 'vue'
|
|
190
|
-
Vue.use(i18nInstance.getI18n())
|
|
191
|
-
Vue.prototype.$i18nInstance = i18nInstance
|
|
192
|
-
|
|
193
|
-
// 之后 (Vue3)
|
|
194
|
-
import { createSSRApp } from 'vue'
|
|
195
|
-
const app = createSSRApp(App)
|
|
196
|
-
app.use(i18nInstance.getI18n())
|
|
197
|
-
app.config.globalProperties.$i18nInstance = i18nInstance
|
|
198
|
-
```
|
|
199
|
-
|
|
200
|
-
### 步骤 4:更新组件语法
|
|
201
|
-
|
|
202
|
-
```vue
|
|
203
|
-
<!-- 之前 (Vue2 Options API) -->
|
|
204
|
-
<script>
|
|
205
|
-
export default {
|
|
206
|
-
data() {
|
|
207
|
-
return {
|
|
208
|
-
text: this.$i18nInstance.$t('hello')
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
}
|
|
212
|
-
</script>
|
|
213
|
-
|
|
214
|
-
<!-- 之后 (Vue3 Composition API) -->
|
|
215
|
-
<script setup lang="ts">
|
|
216
|
-
import { ref } from 'vue'
|
|
217
|
-
import i18nInstance from '@/locales'
|
|
218
|
-
|
|
219
|
-
const text = ref(i18nInstance.$t('hello'))
|
|
220
|
-
</script>
|
|
221
|
-
```
|
|
222
|
-
|
|
223
|
-
## 注意事项
|
|
224
|
-
|
|
225
|
-
1. **引入路径**:这是唯一的区别,Vue2 必须从 `meetfun-i18n/vue2` 引入
|
|
226
|
-
2. **API 使用**:所有 API 方法在两个版本中完全相同
|
|
227
|
-
3. **类型支持**:两个版本都提供完整的 TypeScript 类型定义
|
|
228
|
-
4. **功能特性**:所有功能特性在两个版本中保持一致
|
|
229
|
-
|
|
230
|
-
## 常见问题
|
|
231
|
-
|
|
232
|
-
### Q: 可以在同一个项目中同时使用 Vue2 和 Vue3 版本吗?
|
|
233
|
-
|
|
234
|
-
A: 不可以。一个项目只能使用一个版本。请根据项目使用的 Vue 版本选择对应的引入路径。
|
|
235
|
-
|
|
236
|
-
### Q: 如果引入错误的版本会怎样?
|
|
237
|
-
|
|
238
|
-
A: 会出现类型错误或运行时错误。Vue3 项目使用 `/vue2` 路径会导致 vue-i18n 版本不匹配。
|
|
239
|
-
|
|
240
|
-
### Q: 两个版本的性能有差异吗?
|
|
241
|
-
|
|
242
|
-
A: 性能主要取决于 Vue 和 vue-i18n 的版本,本库在两个版本中的性能表现一致。
|
|
243
|
-
|
|
244
|
-
### Q: API 函数的实现需要改变吗?
|
|
245
|
-
|
|
246
|
-
A: 不需要。API 函数的实现在两个版本中完全相同。
|
|
247
|
-
|
|
248
|
-
## 相关文档
|
|
249
|
-
|
|
250
|
-
- [README.md](./README.md) - 完整的使用文档
|
|
251
|
-
- [VUE2_USAGE.md](./VUE2_USAGE.md) - Vue2 详细使用指南
|
|
252
|
-
- [USAGE_EXAMPLE.md](./USAGE_EXAMPLE.md) - 更多使用示例
|
|
253
|
-
|
|
1
|
+
# Vue2/Vue3 迁移指南
|
|
2
|
+
|
|
3
|
+
本文档帮助您在 Vue2 和 Vue3 项目之间迁移使用 meetfun-i18n。
|
|
4
|
+
|
|
5
|
+
## 快速对比
|
|
6
|
+
|
|
7
|
+
| 特性 | Vue2 | Vue3 |
|
|
8
|
+
|------|------|------|
|
|
9
|
+
| **引入方式** | `import { createMeetFunI18n } from 'meetfun-i18n/vue2'` | `import { createMeetFunI18n } from 'meetfun-i18n'` |
|
|
10
|
+
| **Vue 版本** | Vue 2.7+ | Vue 3.x |
|
|
11
|
+
| **vue-i18n 版本** | 8.x | 9.x |
|
|
12
|
+
| **安装方式** | `Vue.use(i18n)` | `app.use(i18n)` |
|
|
13
|
+
| **API 使用** | 完全相同 ✅ | 完全相同 ✅ |
|
|
14
|
+
|
|
15
|
+
## Vue2 项目示例
|
|
16
|
+
|
|
17
|
+
### 1. 安装依赖
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
pnpm add meetfun-i18n vue@^2.7.0 vue-i18n@^8.0.0
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
### 2. 初始化
|
|
24
|
+
|
|
25
|
+
```javascript
|
|
26
|
+
// src/locales/index.js
|
|
27
|
+
import { createMeetFunI18n } from 'meetfun-i18n/vue2'
|
|
28
|
+
import zhHans from './zh-Hans.json'
|
|
29
|
+
import en from './en.json'
|
|
30
|
+
import { queryLangDictHotData, queryLangDictColdData } from '@/api/translate'
|
|
31
|
+
|
|
32
|
+
const baseMessages = {
|
|
33
|
+
'zh-Hans': zhHans,
|
|
34
|
+
en: en,
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
const apiConfig = {
|
|
38
|
+
queryLangDictHotData,
|
|
39
|
+
queryLangDictColdData,
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export default createMeetFunI18n(baseMessages, apiConfig, {
|
|
43
|
+
defaultLocale: 'zh-Hans',
|
|
44
|
+
systemCode: 'YOUR_SYSTEM_CODE',
|
|
45
|
+
})
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### 3. 在 main.js 中安装
|
|
49
|
+
|
|
50
|
+
```javascript
|
|
51
|
+
// main.js
|
|
52
|
+
import Vue from 'vue'
|
|
53
|
+
import App from './App.vue'
|
|
54
|
+
import i18nInstance from './locales'
|
|
55
|
+
|
|
56
|
+
// 安装 vue-i18n
|
|
57
|
+
Vue.use(i18nInstance.getI18n())
|
|
58
|
+
|
|
59
|
+
// 可选:挂载到原型
|
|
60
|
+
Vue.prototype.$i18nInstance = i18nInstance
|
|
61
|
+
|
|
62
|
+
new Vue({
|
|
63
|
+
i18n: i18nInstance.getI18n(),
|
|
64
|
+
render: h => h(App)
|
|
65
|
+
}).$mount('#app')
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
### 4. 在组件中使用
|
|
69
|
+
|
|
70
|
+
```vue
|
|
71
|
+
<template>
|
|
72
|
+
<view>
|
|
73
|
+
<text>{{ $t('welcomeMessage') }}</text>
|
|
74
|
+
<button @click="changeLanguage">切换语言</button>
|
|
75
|
+
</view>
|
|
76
|
+
</template>
|
|
77
|
+
|
|
78
|
+
<script>
|
|
79
|
+
export default {
|
|
80
|
+
methods: {
|
|
81
|
+
changeLanguage() {
|
|
82
|
+
this.$i18nInstance.switchLocale('en')
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
}
|
|
86
|
+
</script>
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
## Vue3 项目示例
|
|
90
|
+
|
|
91
|
+
### 1. 安装依赖
|
|
92
|
+
|
|
93
|
+
```bash
|
|
94
|
+
pnpm add meetfun-i18n vue@^3.0.0 vue-i18n@^9.0.0
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### 2. 初始化
|
|
98
|
+
|
|
99
|
+
```typescript
|
|
100
|
+
// src/locales/index.ts
|
|
101
|
+
import { createMeetFunI18n } from 'meetfun-i18n'
|
|
102
|
+
import zhHans from './zh-Hans.json'
|
|
103
|
+
import en from './en.json'
|
|
104
|
+
import { queryLangDictHotData, queryLangDictColdData } from '@/api/translate'
|
|
105
|
+
|
|
106
|
+
const baseMessages = {
|
|
107
|
+
'zh-Hans': zhHans,
|
|
108
|
+
en: en,
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
const apiConfig = {
|
|
112
|
+
queryLangDictHotData,
|
|
113
|
+
queryLangDictColdData,
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
export default createMeetFunI18n(baseMessages, apiConfig, {
|
|
117
|
+
defaultLocale: 'zh-Hans',
|
|
118
|
+
systemCode: 'YOUR_SYSTEM_CODE',
|
|
119
|
+
})
|
|
120
|
+
```
|
|
121
|
+
|
|
122
|
+
### 3. 在 main.ts 中安装
|
|
123
|
+
|
|
124
|
+
```typescript
|
|
125
|
+
// main.ts
|
|
126
|
+
import { createSSRApp } from 'vue'
|
|
127
|
+
import App from './App.vue'
|
|
128
|
+
import i18nInstance from './locales'
|
|
129
|
+
|
|
130
|
+
export function createApp() {
|
|
131
|
+
const app = createSSRApp(App)
|
|
132
|
+
|
|
133
|
+
// 安装 vue-i18n
|
|
134
|
+
app.use(i18nInstance.getI18n())
|
|
135
|
+
|
|
136
|
+
return {
|
|
137
|
+
app,
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
### 4. 在组件中使用
|
|
143
|
+
|
|
144
|
+
```vue
|
|
145
|
+
<template>
|
|
146
|
+
<view>
|
|
147
|
+
<text>{{ $t('welcomeMessage') }}</text>
|
|
148
|
+
<button @click="changeLanguage">切换语言</button>
|
|
149
|
+
</view>
|
|
150
|
+
</template>
|
|
151
|
+
|
|
152
|
+
<script setup lang="ts">
|
|
153
|
+
import i18nInstance from '@/locales'
|
|
154
|
+
|
|
155
|
+
const changeLanguage = () => {
|
|
156
|
+
i18nInstance.switchLocale('en')
|
|
157
|
+
}
|
|
158
|
+
</script>
|
|
159
|
+
```
|
|
160
|
+
|
|
161
|
+
## 从 Vue2 迁移到 Vue3
|
|
162
|
+
|
|
163
|
+
如果您的项目正在从 Vue2 升级到 Vue3,只需要:
|
|
164
|
+
|
|
165
|
+
### 步骤 1:更新引入路径
|
|
166
|
+
|
|
167
|
+
```typescript
|
|
168
|
+
// 之前 (Vue2)
|
|
169
|
+
import { createMeetFunI18n } from 'meetfun-i18n/vue2'
|
|
170
|
+
|
|
171
|
+
// 之后 (Vue3)
|
|
172
|
+
import { createMeetFunI18n } from 'meetfun-i18n'
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
### 步骤 2:更新依赖
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
# 卸载 Vue2 相关依赖
|
|
179
|
+
pnpm remove vue@2 vue-i18n@8
|
|
180
|
+
|
|
181
|
+
# 安装 Vue3 相关依赖
|
|
182
|
+
pnpm add vue@^3.0.0 vue-i18n@^9.0.0
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
### 步骤 3:更新 main 文件
|
|
186
|
+
|
|
187
|
+
```typescript
|
|
188
|
+
// 之前 (Vue2)
|
|
189
|
+
import Vue from 'vue'
|
|
190
|
+
Vue.use(i18nInstance.getI18n())
|
|
191
|
+
Vue.prototype.$i18nInstance = i18nInstance
|
|
192
|
+
|
|
193
|
+
// 之后 (Vue3)
|
|
194
|
+
import { createSSRApp } from 'vue'
|
|
195
|
+
const app = createSSRApp(App)
|
|
196
|
+
app.use(i18nInstance.getI18n())
|
|
197
|
+
app.config.globalProperties.$i18nInstance = i18nInstance
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
### 步骤 4:更新组件语法
|
|
201
|
+
|
|
202
|
+
```vue
|
|
203
|
+
<!-- 之前 (Vue2 Options API) -->
|
|
204
|
+
<script>
|
|
205
|
+
export default {
|
|
206
|
+
data() {
|
|
207
|
+
return {
|
|
208
|
+
text: this.$i18nInstance.$t('hello')
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
</script>
|
|
213
|
+
|
|
214
|
+
<!-- 之后 (Vue3 Composition API) -->
|
|
215
|
+
<script setup lang="ts">
|
|
216
|
+
import { ref } from 'vue'
|
|
217
|
+
import i18nInstance from '@/locales'
|
|
218
|
+
|
|
219
|
+
const text = ref(i18nInstance.$t('hello'))
|
|
220
|
+
</script>
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
## 注意事项
|
|
224
|
+
|
|
225
|
+
1. **引入路径**:这是唯一的区别,Vue2 必须从 `meetfun-i18n/vue2` 引入
|
|
226
|
+
2. **API 使用**:所有 API 方法在两个版本中完全相同
|
|
227
|
+
3. **类型支持**:两个版本都提供完整的 TypeScript 类型定义
|
|
228
|
+
4. **功能特性**:所有功能特性在两个版本中保持一致
|
|
229
|
+
|
|
230
|
+
## 常见问题
|
|
231
|
+
|
|
232
|
+
### Q: 可以在同一个项目中同时使用 Vue2 和 Vue3 版本吗?
|
|
233
|
+
|
|
234
|
+
A: 不可以。一个项目只能使用一个版本。请根据项目使用的 Vue 版本选择对应的引入路径。
|
|
235
|
+
|
|
236
|
+
### Q: 如果引入错误的版本会怎样?
|
|
237
|
+
|
|
238
|
+
A: 会出现类型错误或运行时错误。Vue3 项目使用 `/vue2` 路径会导致 vue-i18n 版本不匹配。
|
|
239
|
+
|
|
240
|
+
### Q: 两个版本的性能有差异吗?
|
|
241
|
+
|
|
242
|
+
A: 性能主要取决于 Vue 和 vue-i18n 的版本,本库在两个版本中的性能表现一致。
|
|
243
|
+
|
|
244
|
+
### Q: API 函数的实现需要改变吗?
|
|
245
|
+
|
|
246
|
+
A: 不需要。API 函数的实现在两个版本中完全相同。
|
|
247
|
+
|
|
248
|
+
## 相关文档
|
|
249
|
+
|
|
250
|
+
- [README.md](./README.md) - 完整的使用文档
|
|
251
|
+
- [VUE2_USAGE.md](./VUE2_USAGE.md) - Vue2 详细使用指南
|
|
252
|
+
- [USAGE_EXAMPLE.md](./USAGE_EXAMPLE.md) - 更多使用示例
|
|
253
|
+
|