Reputation: 3439
I am adding various settings to a vuex store which I use and update through various components. The settings are subdivided in objects, but the store.js file is becoming quite long, is there any option on how to import these objects from independent files so the overview is more clear and each setting can have its own file?
export const store = new Vuex.Store({
state: {
// @import settings1 from 'settings1.js'
// @import settings2 from 'settings2.js
// @import settings3 from 'settings3.js
// ...
// instead of adding objects like this:
settings1: {
name1: value1,
name2: value2,
name3: value3,
// ...
},
settings2: {
name1: value1,
name2: value2,
name3: value3,
// ...
},
settings3: {
name1: value1,
name2: value2,
name3: value3,
// ...
}
}
});
Upvotes: 0
Views: 342
Reputation: 29169
You would export the objects to insert into your parent object.
import settings1 from './settings1'
import settings2 from './settings2'
// or
const settings1 = require('./settings1')
const settings2 = require ('./settings2')
export const store = new Vuex.Store({
state: {settings1,settings2}
});
module.exports = {
value1: 1,
value2: 2,
}
// or even better if using `import` instead of `require`
export default {
value1: 1,
value2: 2,
}
module.exports = {
value3: 2,
value4: 4,
}
// or even better if using `import` instead of `require`
export default {
value3: 3,
value4: 4,
}
Upvotes: 1
Reputation: 2535
I think this works the same as in normal js and works like this:
import settings1 from './settings1'
import settings2 from './settings2'
import settings3 from './settings3'
export const store = new Vuex.Store({
state: {
settings1,
settings2,
settings3
}
});
Upvotes: 1