index.vue 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384
  1. <template>
  2. <view class="h100vh page-bg-color">
  3. <u-navbar v-if="showNavbar" :customBack="handleBackHome" :title="typeLabel[currentType]"></u-navbar>
  4. <view class="workflow-page" :style="{height: `calc(100vh - ${diStatusBarHeight}px - 48px)`}">
  5. <view class="workflow-main">
  6. <start-workflow v-if="currentType === 'start'"></start-workflow>
  7. <approve-center v-else :type='currentType'></approve-center>
  8. </view>
  9. </view>
  10. </view>
  11. </template>
  12. <script>
  13. // import wx from "weixin-js-sdk";
  14. import startWorkflow from './startWorkflow/startWorkflow'
  15. import approveCenter from './approveCenter/index'
  16. import constant from '@/utils/constant.js'
  17. export default {
  18. data() {
  19. return {
  20. currentType: 'start',
  21. showNavbar:true,
  22. typeLabel: {
  23. start: '发起申请',
  24. myLaunch: '我发起的',
  25. todo: '我的待办',
  26. done: '我的已办',
  27. cc: '抄送我的',
  28. manager: '流程干预',
  29. },
  30. diStatusBarHeight: 0
  31. };
  32. },
  33. onLoad(options) {
  34. this.diStatusBarHeight = uni.getSystemInfoSync().statusBarHeight
  35. this.currentType = options.type
  36. if(options?.mpType){
  37. this.showNavbar=false
  38. }
  39. uni.setNavigationBarTitle({
  40. title: this.typeLabel[this.currentType] || ''
  41. });
  42. // console.log('类型',options.type)
  43. },
  44. components: {
  45. startWorkflow,
  46. approveCenter
  47. },
  48. methods: {
  49. handleBackHome() {
  50. console.log('000000')
  51. let url=constant.host()
  52. window.parent.postMessage('/pages/index/index',url+'/mobile/pages/flow/flow')
  53. // try {
  54. // console.log('unipostMessage')
  55. // uni.webView.postMessage({
  56. // data: {
  57. // action: '/pages/index/index'
  58. // }
  59. // });
  60. // } catch (error) {
  61. // console.warn('unipostMessage',error)
  62. // }
  63. // uni.switchTab({
  64. // url: '/pages/index/index'
  65. // })
  66. }
  67. }
  68. }
  69. </script>
  70. <style lang="scss">
  71. .h100vh {
  72. height: 100vh;
  73. }
  74. .workflow-page {
  75. .workflow-main {
  76. height: 100%;
  77. overflow: hidden;
  78. }
  79. }
  80. </style>