MCPcopy Index your code
hub / github.com/Haixing-Hu/vue-i18n

github.com/Haixing-Hu/vue-i18n @v0.2.2

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.2.2 ↗ · + Follow
235 symbols 627 edges 8 files 177 documented · 75%
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

vue-i18n

Build Status Coverage Status bitHound Score Dependency Status devDependency Status

Yet another internationalization plugin for Vue.js.

Requirements

Instllation

npm

$ npm install vue-i18n-plugin

bower

$ bower install vue-i18n-plugin

Usage

JSON file: resources/i18n/en-US.json

{
  "message": {
    "hello": "Hello",
    "world": "World"
  }
}

JSON file: resources/i18n/zh-CN.json

{
  "message": {
    "hello": "您好",
    "world": "世界"
  }
}
var Vue = require('vue');
var i18n = require('vue-i18n');

// set plugin
Vue.use(i18n, {
  baseUrl: 'resources/i18n'
});

// create instance
new Vue({
  el: '#test-i18n',
  beforeCompile: function() {
    this.$setLanguage("zh-CN");
  },
  methods: {
    switchLanguage: function(lang) {
      this.$setLanguage(lang);
    }
  }
});

Template the following:






Language: {{$language}}




{{$i18n.message.hello}}, {{$i18n.message.world}}





Output the following:






Language: zh-CN




您好, 世界





Formatting Messages

This plugin could work together with the vue-format plugin.

JSON file: resources/i18n/en.json

{
  "message": {
    "hello": "Hello {0}, {1}!"
  }
}

Template the following:






{{ $i18n.message.hello | format "world" 123 }}





Output the following:






Hello world, 123!





API

$setLanguage(lang)

Sets the current language. Calling this value will reload the localization files according to the new language and change the current displayed language.

  • lang: the code of the new language.

$language

Stores the current language.

$i18n

An object which contains the localization messages for the current language.

Options

Plugin options

Vue.use(plugin, {
  baseUrl: "i18n"
  fallbackLanguage: "en-US",
  timeout: 500,
  async: false
})

baseUrl

Specify the base URL of the localization files, which could be either an absolute URL, or a relative URL relative to the current javascript file.

The default value of this option is i18n.

fallbackLanguage

Specify the code of the fallback langauge. If the localization file of the current language cannot be load, the localization file of the fallback language will be load.

The default value of this option is en-US.

timeout

The timeout for the AJAX calls, in milliseconds. Default value is 500.

async

Indicates whether to load the localization file asynchronously. Default value is false.

Contributing

  • Fork it !
  • Create your top branch from dev: git branch my-new-topic origin/dev
  • Commit your changes: git commit -am 'Add some topic'
  • Push to the branch: git push origin my-new-topic
  • Submit a pull request to dev branch of Haixing-Hu/vue-i18n repository !

Building and Testing

First you should install all depended NPM packages. The NPM packages are used for building and testing this package.

$ npm install

Then install all depended bower packages. The bower packages are depended by this packages.

$ bower install

Now you can build the project.

$ gulp build

The following command will test the project.

$ gulp test

The following command will perform the test and generate a coverage report.

$ gulp test:coverage

The following command will perform the test, generate a coverage report, and upload the coverage report to coveralls.io.

$ gulp test:coveralls

You can also run bower install and gulp build together with the following command:

npm build

Or run bower install and gulp test:coveralls together with the following command:

npm test

License

MIT

MIT

Core symbols most depended-on inside this repo

warn
called by 55
demo/demo.all.js
isObject
called by 19
demo/demo.all.js
toArray
called by 17
demo/demo.all.js
hasOwn
called by 14
demo/demo.all.js
cb
called by 14
demo/demo.all.js
inDoc
called by 14
demo/demo.all.js
resolveAsset
called by 12
demo/demo.all.js
createAnchor
called by 11
demo/demo.all.js

Shape

Function 235

Languages

TypeScript100%

Modules by API surface

demo/demo.all.js233 symbols
test/specs/vue-i18n.js1 symbols
src/vue-i18n.js1 symbols

For agents

$ claude mcp add vue-i18n \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page