Files
exchange/resources/assets/js/components/LocaleDropdown.vue
T
2018-06-25 16:57:18 +08:00

45 lines
1.2 KiB
Vue

<template>
<div>
<ul class="nav navbar-nav">
<li class="nav-item dropdown">
<a class="nav-link dropdown-toggle" href="#" role="button"
data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
{{ locales[locale] }}
</a>
<div class="dropdown-menu">
<a v-for="(value, key) in locales" :key="key" class="dropdown-item" href="#"
@click.prevent="setLocale(key)">
{{ value }}
</a>
</div>
</li>
<li><a class="nav-link" href="#" role="button">Update Rate</a></li>
<li><a class="nav-link" href="#" role="button">Complete Order</a></li>
<li><a class="nav-link" href="#" role="button">Transaction History</a></li>
<li><a class="nav-link" href="#" role="button">Upload Supplier Bank Slip to System</a></li>
</ul>
</div>
</template>
<script>
import { mapGetters } from 'vuex'
import { loadMessages } from '~/plugins/i18n'
export default {
computed: mapGetters({
locale: 'lang/locale',
locales: 'lang/locales'
}),
methods: {
setLocale (locale) {
if (this.$i18n.locale !== locale) {
loadMessages(locale)
this.$store.dispatch('lang/setLocale', { locale })
}
}
}
}
</script>