1
0

index.js 1.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263
  1. const controlService = require('../../utils/control-service')
  2. const {
  3. createPageToast
  4. } = require('../../utils/page-toast')
  5. Page({
  6. data: controlService.getState(),
  7. onLoad() {
  8. this.pageToast = createPageToast(this, this.data)
  9. controlService.init()
  10. this.unsubscribeControl = controlService.subscribe((nextState) => {
  11. this.setData(nextState)
  12. this.pageToast.showFromState(nextState)
  13. })
  14. },
  15. onShow() {
  16. if (this.pageToast) {
  17. this.pageToast.setActive(true)
  18. }
  19. controlService.syncSharedInputs()
  20. },
  21. onHide() {
  22. if (this.pageToast) {
  23. this.pageToast.setActive(false)
  24. }
  25. },
  26. onUnload() {
  27. if (this.pageToast) {
  28. this.pageToast.destroy()
  29. this.pageToast = null
  30. }
  31. if (this.unsubscribeControl) {
  32. this.unsubscribeControl()
  33. this.unsubscribeControl = null
  34. }
  35. },
  36. onSpeedCommandInput(event) {
  37. controlService.updateSpeedCommandInput(event.detail.value)
  38. },
  39. onSpeedCommandBlur(event) {
  40. controlService.updateSpeedCommandBlur(event.detail.value)
  41. },
  42. readControlStatus() {
  43. if (!this.data.connectedDevice) return
  44. controlService.readControlStatus()
  45. },
  46. onControlButtonTap(event) {
  47. if (!this.data.connectedDevice) return
  48. controlService.sendControlCommand(event.currentTarget.dataset.key)
  49. }
  50. })