[Refactoring] Improve vuex store usage
Description
- Update the current application (pages/components) to use the vuex store.
- Use store modules to encapsulate behavior.
Task
Update pages and corresponding components if needed:
- Update contacts
- Update platforms
- Update devices
- Update configurations
Reference
- nuxt store
- nuxt typescript store
Mentions
Designs
- Show closed items
No child items are currently assigned. Use child items to break down this issue into smaller parts.
Link issues together to show that they're related.
Learn more.
Activity
-
Newest first Oldest first
-
Show all activity Show comments only Show history only
- Tobias Kuhnert added Doing Improvement Priority: High labels
added Doing Improvement Priority: High labels
- Author Maintainer
Refactoring Contacts
Tasks
- store module for contacts already implemented:
store/contacts.ts
- updated methods, if needed
- implement new methods if needed
- use the store module in the corresponding places
Pages
-
pages/contacts/index.vue
- move pagination to store
- idea: when refactoring the other entities it's maybe useful to create one module for pagination (!maybe!)
- move fetching/searching to store
- move pagination to store
-
pages/contacts/_contactId.vue
-
pages/contacts/new.vue
-
pages/contacts/_contactId/edit.vue
-
Note:
- contacts are also used thought the other pages (device/platform/configuration)
- in my opinion these places should be refactored when these entities get refactored
Open Todos (copied from platforms)
- Check the following ( maybe there's no need for action)
- Todos in code
-
add
ProgressIndicator.vue
. I missed it at some places -
add error handling. add some places i didn't add a
try-catch
with good messages
Edited by Tobias Kuhnert - store module for contacts already implemented:
- Tobias Kuhnert changed the description
changed the description
- Tobias Kuhnert changed the description
changed the description
- Tobias Kuhnert created branch
253-refactoring-improve-vuex-store-usage
to address this issuecreated branch
253-refactoring-improve-vuex-store-usage
to address this issue - Tobias Kuhnert mentioned in merge request !225 (closed)
mentioned in merge request !225 (closed)
- Author Maintainer
Refactoring Platforms
Task
- Updating the Api to implement the search using vuex
- create store module for platforms
- implement needed methods
- use the store module in the corresponding places
Pages
-
pages/platforms/index.vue
- began refactoring, new version created (still more potential for better code)
- setting (and probably getting) of URL-Params currently not working, will be fixed later
-
pages/platforms/new.vue
-
pages/platforms/_platformId.vue
-
pages/platforms/_platformId/contacts.vue
- created
pages/platforms/_platformId/contacts/index.vue
- created
-
pages/platforms/_platformId/basic.vue
-
pages/platforms/_platformId/actions.vue
- created
pages/platforms/_platformId/actions/index.vue
-
apiDispatcher
in actions.vue is should be handed over toPlatformActionTimeline
in index.vue, currently not implemeted- wurde in der Urspungsform wieder eingebaut, muss aber überarbeitet werden
- created
-
pages/platforms/_platformId/actions/generic-platform-actions/_actionId/edit.vue
-
pages/platforms/_platformId/actions/software-update-actions/_actionId/edit.vue
-
pages/platforms/_platformId/actions/new.vue
- created subpages to split the logic and place it where it belongs:
pages/platforms/_platformId/actions/new/generic-platform-actions.vue
pages/platforms/_platformId/actions/new/software-update-actions.vue
- created subpages to split the logic and place it where it belongs:
-
pages/platforms/_platformId/attachments.vue
- created
pages/platforms/_platformId/attachments/index.vue
- created
-
pages/platforms/_platformId/attachments/new.vue
-
pages/platforms/_platformId/attachments/_attachmentId/edit.vue
-
pages/platforms/_platformId/basic/edit.vue
-
pages/platforms/_platformId/basic/index.vue
-
pages/platforms/_platformId/contacts/new.vue
-
pages/platforms/copy/_platformId.vue
Edited by Tobias Kuhnert - Author Maintainer
Refactoring Devices
Task
- Updating the Api to implement the search using vuex
- create store module for devices
- implement needed methods
- use the store module in the corresponding places
Pages
-
pages/devices/_deviceId/actions/device-calibration-actions/_actionId/edit.vue
-
pages/devices/_deviceId/actions/generic-device-actions/_actionId/edit.vue
-
pages/devices/_deviceId/actions/software-update-actions/_actionId/edit.vue
-
pages/devices/_deviceId/actions/new.vue
- created sub pages:
pages/devices/_deviceId/actions/new/device-calibration-actions.vue
pages/devices/_deviceId/actions/new/generic-device-actions.vue
pages/devices/_deviceId/actions/new/software-update-actions.vue
- created sub pages:
-
pages/devices/_deviceId/attachments/_attachmentId/edit.vue
-
pages/devices/_deviceId/attachments/new.vue
-
pages/devices/_deviceId/basic/edit.vue
-
pages/devices/_deviceId/basic/index.vue
-
pages/devices/_deviceId/contacts/new.vue
-
pages/devices/_deviceId/customfields/_customfieldId.vue
- removed
-
pages/devices/_deviceId/customfields/_customfieldId/edit.vue
-
pages/devices/_deviceId/customfields/index.vue
- created:
pages/devices/_deviceId/customfields/new.vue
-
pages/devices/_deviceId/measuredquantities.vue
-
pages/devices/_deviceId/measuredquantities/_measuredquantityId/edit.vue
-
pages/devices/_deviceId/actions.vue
- created
pages/devices/_deviceId/actions/index.vue
- created
-
pages/devices/_deviceId/attachments.vue
- created
pages/devices/_deviceId/attachments/index.vue
- created
-
pages/devices/_deviceId/basic.vue
-
pages/devices/_deviceId/contacts.vue
- created
pages/devices/_deviceId/contacts/index.vue
- created
-
pages/devices/_deviceId/customfields.vue
-
pages/devices/copy/_deviceId.vue
-
pages/devices/_deviceId.vue
-
pages/devices/index.vue
-
pages/devices/new.vue
Edited by Tobias Kuhnert - Author Maintainer
Open Todos thought all pages/entities
- Todos in code
-
add
ProgressIndicator.vue
. I missed it at some places -
add error handling. add some places i didn't add a
try-catch
with good messages
- Author Maintainer
Refactoring Configurations
Tasks
- store module for contacts already implemented:
store/configurations.ts
- updated methods, if needed
- implement new methods if needed
- use the store module in the corresponding places
Pages
-
pages/configurations/_configurationId/basic/edit.vue
-
pages/configurations/_configurationId/basic/index.vue
-
pages/configurations/_configurationId/contacts/new.vue
-
pages/configurations/_configurationId/locations/dynamic-location-begin-actions/_actionId/edit.vue
-
pages/configurations/_configurationId/locations/dynamic-location-begin-actions/new.vue
-
pages/configurations/_configurationId/locations/dynamic-location-end-actions/_actionId/edit.vue
-
pages/configurations/_configurationId/locations/dynamic-location-end-actions/new.vue
-
pages/configurations/_configurationId/locations/static-location-begin-actions/_actionId/edit.vue
-
pages/configurations/_configurationId/locations/static-location-begin-actions/new.vue
-
pages/configurations/_configurationId/locations/static-location-end-actions/_actionId/edit.vue
-
pages/configurations/_configurationId/locations/static-location-end-actions/new.vue
-
pages/configurations/_configurationId/locations/_timestamp.vue
-
pages/configurations/_configurationId/actions.vue
- created
pages/configurations/_configurationId/actions/index.vue
- created
-
pages/configurations/_configurationId/basic.vue
-
pages/configurations/_configurationId/contacts.vue
- created:
pages/configurations/_configurationId/contacts/index.vue
- created:
-
pages/configurations/_configurationId/locations.vue
-
pages/configurations/_configurationId/platforms-and-devices.vue
-
pages/configurations/_configurationId.vue
- renamed to _configurationId.vue
-
pages/configurations/index.vue
-
pages/configurations/new.vue
Edited by Tobias Kuhnert - store module for contacts already implemented:
- Marc Hanisch mentioned in issue #252 (closed)
mentioned in issue #252 (closed)
- Tobias Kuhnert closed
closed
Please register or sign in to reply