index.vue 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127
  1. <template>
  2. <view class="width100 borderBottom1pxf2f2f2" @tap.stop.prevent="show">
  3. <QStemplate
  4. :title="title"
  5. :titleHide="titleHide" :fontSize="fontSize" :width="width" :titleFlex="titleFlex"
  6. :contentFlex="contentFlex" :titleStyle="titleStyle" :contentStyle="contentStyle" :required="required" :requiredSign="requiredSign"
  7. :layout="layout" :titleLayout="titleLayout" :itemDisabled="itemDisabled" :titleColor="titleColor">
  8. <view class="flex_row width100">
  9. <block v-if="linkage">
  10. <block v-if="linkageNum == 2">
  11. <view class="flex_row_e_c padding_10rpx_15rpx Flex5" :class="nValue.data && nValue.data.steps1 && nValue.data.steps2?'':'fontColorADADAD'">
  12. {{
  13. nValue.data && nValue.data.steps1 && nValue.data.steps2?
  14. (nValue.data.steps1[steps.step_1_value] + '-' +
  15. (steps.step_2_value?nValue.data.steps2[steps.step_2_value]:nValue.data.steps2)):
  16. placherhold
  17. }}
  18. </view>
  19. </block>
  20. <block v-if="linkageNum == 3">
  21. <view class="flex_row_e_c padding_10rpx_15rpx Flex5" :class="nValue.data && nValue.data.steps1 && nValue.data.steps2 && nValue.data.steps3?'':'fontColorADADAD'">
  22. {{
  23. nValue.data && nValue.data.steps1 && nValue.data.steps2 && nValue.data.steps3?
  24. (nValue.data.steps1[steps.step_1_value] + '-' +
  25. (steps.step_2_value?nValue.data.steps2[steps.step_2_value]:nValue.data.steps2) + '-' +
  26. (steps.step_3_value?nValue.data.steps3[steps.step_3_value]:nValue.data.steps3)):
  27. placherhold
  28. }}
  29. </view>
  30. </block>
  31. </block>
  32. <block v-else>
  33. <block v-if="nValue.data && nValue.data.length > 0">
  34. <view class="flex_row_e_c padding_10rpx_15rpx Flex5">
  35. <view
  36. v-for="(i, d) in nValue.data"
  37. :key="d">
  38. {{
  39. d==0?
  40. (steps?
  41. steps.step_1_value?
  42. i[steps.step_1_value]:
  43. i:
  44. i):
  45. '-' +
  46. (steps?
  47. steps.step_1_value?
  48. i[steps.step_1_value]:
  49. i:
  50. i)
  51. }}
  52. </view>
  53. </view>
  54. </block>
  55. <block v-else>
  56. <view class="flex_row_e_c padding_10rpx_15rpx Flex5 fontColorADADAD">
  57. {{placherhold}}
  58. </view>
  59. </block>
  60. </block>
  61. <view class="Flex1_5 flex_row_c_c">
  62. <uniIcon type="forward" :size="fontSize" color="#666"></uniIcon>
  63. </view>
  64. </view>
  65. </QStemplate>
  66. <pickerCustom2
  67. ref="inputsRef"
  68. :height="height"
  69. :fontScale="fontScale"
  70. :buttonSet="buttonSet"
  71. :dataSet="dataSet"
  72. :showReset="showReset"
  73. :title="pickerTitle"
  74. :mode="mode"
  75. :zIndex="zIndex"
  76. :bgColor_title="bgColor_title"
  77. :titleColor="pickerTitleColor"
  78. :autoHide="autoHide"
  79. @confirm="confirm"
  80. @pickerChange="pickerChange"
  81. :linkage="linkage"
  82. :linkageNum="linkageNum"
  83. :steps="steps"
  84. :async="async"
  85. :customId="customId"></pickerCustom2>
  86. </view>
  87. </template>
  88. <script>
  89. import _app from '../../js/app.js';
  90. import QStemplate from '../../template/template.vue';
  91. import QSInputsMixin from '../../js/QSInputsMixin.js';
  92. import QSInputsPickerMixin from '../../js/QSInputsPickerMixin.js';
  93. import pickerCustom2 from '../../template/QS-picker/elements/QS-picker-custom2.vue';
  94. import uniIcon from '../../uniIcons/uni-icons.vue';
  95. export default {
  96. components: {
  97. QStemplate,
  98. pickerCustom2,
  99. uniIcon
  100. },
  101. props: {
  102. linkage: {
  103. type: Boolean,
  104. default: false
  105. },
  106. linkageNum: {
  107. type: [Number, String],
  108. default: 2
  109. },
  110. steps: Object,
  111. async: {
  112. type: Boolean,
  113. default: false
  114. }
  115. },
  116. mixins: [QSInputsMixin({
  117. QSInputsType: _app.typeObj.picker_custom2
  118. }), QSInputsPickerMixin()]
  119. };
  120. </script>
  121. <style scoped>
  122. @import url("../../css/inputs.css");
  123. </style>