Comments (7)
Hi @volodalexey,
This is an interesting question and definitely a use case that we should support somehow. I will look into this tomorrow and see if I can find a solution.
from vuex-i18n.
Hi there,
Sorry for taking this long time to respond, I got quite swamped at work. We will try to take another look at the problem next week.
from vuex-i18n.
Hi!
Thanks for reply.
For anyone who wants a quick temporary solution:
if (!$i18n.exists(locale)) {
$i18n.set(undefined); // TODO
$store.dispatch(actions.dic.FETCH_LOCALE, locale)
.then((translations) => {
$i18n.add(locale, translations);
$i18n.set(locale);
});
} else {
$i18n.set(locale);
}
from vuex-i18n.
I've managed to get component to be updated on store change. I've overrided ADD_LOCALE mutation to use Vue.set()
// Export store
export default {
namespaced: false,
...VuexI18n.store,
mutations: {
...VuexI18n.store.mutations,
ADD_LOCALE(state, payload) {
Vue.set(state.translations, payload.locale, payload.translations);
},
},
};
and that's all.
from vuex-i18n.
Marvelous, I already thought that something like that should work but just did not get around to try it out. I will adapt the code accordingly.
from vuex-i18n.
Ok. This was actually a little bit more difficult. We did not want to use Vue.set in the module, to avoid having to load the Vue module explicitly.
However we managed to trigger the observer on the translations by calling state.translations.__ob__.dep.notify();
after updating the store. This seems to do the trick as well. We also added a respective "test case" to the testing page.
Version 1.3.5 - available now - should fix the issue
from vuex-i18n.
@tikiatua Great that you have found better way. I was sure there is one, but since Vue
was already loaded in my code Vue.set
was the fastest&easiest to use.
Thanks for the update.
from vuex-i18n.
Related Issues (20)
- Support for yarn HOT 1
- What is the current version? HOT 3
- The v1.10.7 introduced a couple of breaking changes: Comparison vs v1.10.5 HOT 5
- Not able to access i18 plugin from mutation in classic mode store in Nuxt application HOT 1
- Usage of special characters inside the translations ( ) HOT 2
- Testing the fallback language - Chai HOT 2
- Single File Component Children not updating HOT 3
- Hook custom logic for non existent keys in lang HOT 2
- nuxt example implementation HOT 2
- Improve typescript declarations HOT 3
- Improve plugin documentation
- Multiple modules HOT 2
- What about provide plugin for debugging content HOT 1
- Using square brackets in identifier does not work HOT 2
- Linked local messages HOT 1
- Set Fallback language File HOT 5
- How to translate a component attribute/property
- Unicode-Support?
- support change language key before render ?
- Option to suppress the `i18n: Not all placeholders found` console warnings HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vuex-i18n.