Vue 플러그인이란 별도의 import없이 전역으로 function을 내장시키는 방법을 말한다.
<!-- i18n.js -->
export default {
install: (app, options) => {
// 로직 작성
}
}
플러그인 개체의 기본형은 위와 같다.
<!-- i18n.js -->
export default {
install: (app, options) => {
app.config.globalProperties.$translate = (key) => { //$translate()를 전역으로 적용
return key.split('.').reduce((o,i) => {
if (o) return o[i];
}, options);
};
}
}
<!-- main.js -->
...
import i18nPlugin from './plugins/i18n'
const i18nStrings = {
en: {
hi: 'Hello!',
save: 'Save'
},
ko: {
hi: '안녕하세요!',
save: '저장'
}
};
app.use(i18nPlugin, i18nStrings)
...
템플릿작성법: {{$translate("en.hi")}}