journal.js 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import { SET_JOURNALS, SET_LOADING_JOURNALS } from '@/constants/mutationTypes'
  2. import { INIT_JOURNALS } from '@/constants/actionTypes'
  3. const initialState = {
  4. journals: [],
  5. loadingJournals: false
  6. }
  7. const state = {
  8. journals: initialState.journals,
  9. loadingJournals: !initialState.loadingJournals
  10. }
  11. const getters = {
  12. /**
  13. *
  14. * @param {*} state
  15. */
  16. journals(state) {
  17. return state.journals
  18. },
  19. /**
  20. *
  21. * @param {*} state
  22. */
  23. loadingJournals(state) {
  24. return state.loadingJournals
  25. }
  26. }
  27. const mutations = {
  28. /**
  29. *
  30. * @param {*} state
  31. * @param {*} payload
  32. */
  33. [SET_JOURNALS] (state, payload) {
  34. state.journals = payload
  35. },
  36. /**
  37. *
  38. * @param {*} state
  39. * @param {*} payload
  40. */
  41. [SET_LOADING_JOURNALS] (state, payload) {
  42. state.loadingJournals = !!payload
  43. }
  44. }
  45. const actions = {
  46. /**
  47. *
  48. * @param {*} param0
  49. * @param {*} payload
  50. */
  51. [INIT_JOURNALS] ({ commit }, payload) {
  52. commit(SET_JOURNALS, payload)
  53. commit(SET_LOADING_JOURNALS)
  54. }
  55. }
  56. export default {
  57. state,
  58. getters,
  59. actions,
  60. mutations
  61. }