returnReason.js 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596
  1. const ReturnReason = {
  2. template: `
  3. <a-input-group compact :id="id">
  4. <a-input style="width: 80%" allowClear @change="handleChange" :placeholder="placeholder" :value="defaultVal"/>
  5. <a-select
  6. style="width: 80px"
  7. @change="changeSel"
  8. :dropdownMatchSelectWidth="false"
  9. placeholder="选择"
  10. option-filter-prop="children"
  11. :filter-option="filterOption">
  12. <a-select-option v-for="item in list" :key="item" :value="item">
  13. {{ item }}
  14. </a-select-option>
  15. </a-select>
  16. </a-input-group>
  17. `,
  18. props: {
  19. value: {
  20. type: String,
  21. defatut: ''
  22. },
  23. id: {
  24. type: String,
  25. default: ''
  26. },
  27. placeholder: {
  28. type: String,
  29. default: '请输入退货原因'
  30. },
  31. },
  32. data() {
  33. return {
  34. defaultVal: this.value,
  35. list: [
  36. '漏油或者不上油',
  37. '外观不良:脏污、破损、脱胶、变形等',
  38. '尺寸问题',
  39. '泄压',
  40. '无法安装',
  41. '无法或不便安装',
  42. '抖动或跳动',
  43. '噪音',
  44. '刮雨不干净',
  45. '胶条断裂、脱落',
  46. '喇叭无声',
  47. '声音嘶哑或者变音',
  48. '浸水',
  49. '伤盘',
  50. '摩擦块掉渣,脱落或有残渣',
  51. '制动不足,刹车不灵敏',
  52. '不耐磨',
  53. '冒烟',
  54. '缺少感应线',
  55. '尺寸不标准',
  56. '不点火,间歇式失火',
  57. '漏电',
  58. '击穿',
  59. '烧蚀',
  60. '包装型号不符',
  61. '整体不亮/部分能亮',
  62. '灯珠脱落',
  63. '漏电短路',
  64. '包装型号不符/包装破损',
  65. '召回'
  66. ]
  67. };
  68. },
  69. mounted() {
  70. },
  71. watch: {
  72. value(newValue, oldValue) {
  73. this.defaultVal = newValue
  74. },
  75. },
  76. methods: {
  77. filterOption (input, option) {
  78. return (
  79. option.componentOptions.children[0].text.toLowerCase().indexOf(input.toLowerCase()) >= 0
  80. )
  81. },
  82. changeSel(value){
  83. this.defaultVal = value;
  84. this.$emit('change', value);
  85. this.$emit('input', value);
  86. },
  87. handleChange(e) {
  88. const value = e.target.value
  89. this.defaultVal = value;
  90. this.$emit('change', value);
  91. this.$emit('input', value);
  92. },
  93. },
  94. };
  95. export default ReturnReason