過年期間有人詢問「javascript-i18-core」怎麼不見了,是因為之前將「程式試煉所」換了底層框架,所以舊網頁都先下架,需要找時間再「慢慢地」弄回來,也因此順手就先將 javascript-i18n-core 更新版本。

新版本 A.1 最主要是多了 pass object 替換變數和 auto translate 功能。

Quick start

import i18n from './i18n.js';
i18n.set({
    'resource': '/i18n.json',
    'locale': 'en'
}).init(function () {
    // do something
});

Usage

// general
let foo = i18n._("key");

// pass by object
const user = {
    'name': 'John',
    'age': 10
};
let foo = i18n._("key", user);

// pass by parameters
let foo = i18n._('key', 'john', '10');

// change default language
let foo = i18n.set('locale', 'en');

// get specific language
let foo = i18n._('en', 'key');
let foo = i18n._('en', 'key', user);
let foo = i18n._('en', 'key', 'john', 10);

Auto translate

<div data-i18n="key"></div>
<div data-i18n="key" data-i18n-pass="{'name': 'John', 'age': 10}"></div>
// auto translate
i18n.set('locale', 'en').init(function () {
    this.translate();
});

button.addEventListener("click", function () {
    i18n.translate();
    // translate to specific language
    i18n.translate('en');
});

Have fun :p