VueJs和vue-i18n错误

Der*_*kuz 5 javascript internationalization vue.js

即时通讯使用Webpack CLI模板.

然后我用npm install 安装https://kazupon.github.io/vue-i18n/ --save vue-i18n

在我的main.js中,我执行导入并设置"en"语言环境

import Vue from 'vue'
import VueI18n from 'vue-i18n'
import App from './App'
import router from './router'

Vue.use(VueI18n)
Vue.locale('en', {})

new Vue({
  el: '.nwt-mm-app',
  router,
  template: '<App/>',
  components: { App }
})
Run Code Online (Sandbox Code Playgroud)

控制台输出总是说

Uncaught TypeError: __WEBPACK_IMPORTED_MODULE_0_vue___default.a.locale is not a function
    at eval (eval at <anonymous> (app.js:802), <anonymous>:16:45)
    at Object.<anonymous> (app.js:802)
    at __webpack_require__ (app.js:660)
    at fn (app.js:84)
    at Object.<anonymous> (app.js:1176)
    at __webpack_require__ (app.js:660)
    at app.js:709
    at app.js:712
Run Code Online (Sandbox Code Playgroud)

我有点失踪吗?问候,

马库斯

小智 5

嗯,你可以查看作者的另一个仓库。

\n\n

https://github.com/kazupon/vue-i18n-alpha-repro

\n\n

在演示中,vue-i18n就像:

\n\n
import Vue from \'vue\'\nimport App from \'./App\'\nimport VueI18n from \'vue-i18n\'\nimport router from \'./router\'\n\nVue.use(VueI18n)\nconst i18n = new VueI18n({\n   locale: \'ja\',\n   messages: {\n     ja: {\n       hello: \'\xe3\x81\x93\xe3\x82\x93\xe3\x81\xab\xe3\x81\xa1\xe3\x81\xaf\'\n     },\n     en: {\n       hello: \'hello\'\n     }\n    }\n   })\n\n Vue.config.productionTip = false\n\n /* eslint-disable no-new */\n new Vue({\n   el: \'#app\',\n   router,\n   i18n,\n   template: \'<App/>\',\n   components: { App }\n })\n
Run Code Online (Sandbox Code Playgroud)\n\n

它有效。

\n