evaluateStore.vue 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. <template>
  2. <!-- @rightClick 只有存在右边部分的情况下才使用,
  3. 右边默认为空,可以使用slot="right" 自定义右边内容
  4. @ok 是单选或多选最终返回的结果
  5. types 类型 radio或checkbox
  6. titleKeys 标题对应的字段名称key,默认是name
  7. listData 是数据
  8. showArrow 是否显示右边箭头
  9. backValue 设置返回的数据是idArr [id,id,...] 或 objArr [obj,obj,...]
  10. defValue 设置已选择的数据,格式和backValue 一致
  11. checkIconPositon 选择图标显示左边还是右边 left or right
  12. -->
  13. <uni-check-list
  14. :listData="list"
  15. checkIconPositon="right"
  16. :showArrow="false"
  17. :defValue="value"
  18. types="checkbox"
  19. backValue="objArr"
  20. @ok="chooseOk">
  21. </uni-check-list>
  22. </template>
  23. <script>
  24. import {findStoreList} from '@/api/store'
  25. export default {
  26. data() {
  27. return {
  28. list: [],
  29. value: [],
  30. }
  31. },
  32. onLoad(opts) {
  33. this.value = opts.storesList&&JSON.parse(opts.storesList)
  34. // 查询门店
  35. findStoreList({}).then(res=>{
  36. console.log(res.data)
  37. if(res.status == 200){
  38. this.list = res.data || []
  39. }
  40. })
  41. },
  42. methods: {
  43. // 选中门店,item 返回的是数组
  44. chooseOk(item) {
  45. console.log(item)
  46. if(item.length==0){
  47. uni.showToast({
  48. icon:'none',
  49. title:'请选择考评门店'
  50. })
  51. }else{
  52. //关闭当前页面,这里处理数据逻辑
  53. uni.$emit("selKpStores",item)
  54. uni.navigateBack()
  55. }
  56. },
  57. }
  58. }
  59. </script>
  60. <style lang="scss">
  61. page{
  62. height: 100%;
  63. }
  64. </style>