‘liusuyi’
2023-05-06 848ae5f7e5c178be9f1ee9ac33b54e19ae038873
1
{"remainingRequest":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js??vue-loader-options!D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\src\\components\\RightToolbar\\index.vue?vue&type=script&lang=js&","dependencies":[{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\src\\components\\RightToolbar\\index.vue","mtime":1675221397100},{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1678842086999},{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\babel-loader\\lib\\index.js","mtime":1678842088721},{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\cache-loader\\dist\\cjs.js","mtime":1678842086999},{"path":"D:\\Workspaces\\ard\\RuoYi-Vue-master\\ruoyi-ui\\node_modules\\vue-loader\\lib\\index.js","mtime":1678842089772}],"contextDependencies":[],"result":[{"type":"Buffer","data":"base64:Ly8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KLy8KDQpleHBvcnQgZGVmYXVsdCB7DQogIG5hbWU6ICJSaWdodFRvb2xiYXIiLA0KICBkYXRhKCkgew0KICAgIHJldHVybiB7DQogICAgICAvLyDmmL7pmpDmlbDmja4NCiAgICAgIHZhbHVlOiBbXSwNCiAgICAgIC8vIOW8ueWHuuWxguagh+mimA0KICAgICAgdGl0bGU6ICLmmL7npLov6ZqQ6JePIiwNCiAgICAgIC8vIOaYr+WQpuaYvuekuuW8ueWHuuWxgg0KICAgICAgb3BlbjogZmFsc2UsDQogICAgfTsNCiAgfSwNCiAgcHJvcHM6IHsNCiAgICBzaG93U2VhcmNoOiB7DQogICAgICB0eXBlOiBCb29sZWFuLA0KICAgICAgZGVmYXVsdDogdHJ1ZSwNCiAgICB9LA0KICAgIGNvbHVtbnM6IHsNCiAgICAgIHR5cGU6IEFycmF5LA0KICAgIH0sDQogICAgc2VhcmNoOiB7DQogICAgICB0eXBlOiBCb29sZWFuLA0KICAgICAgZGVmYXVsdDogdHJ1ZSwNCiAgICB9LA0KICAgIGd1dHRlcjogew0KICAgICAgdHlwZTogTnVtYmVyLA0KICAgICAgZGVmYXVsdDogMTAsDQogICAgfSwNCiAgfSwNCiAgY29tcHV0ZWQ6IHsNCiAgICBzdHlsZSgpIHsNCiAgICAgIGNvbnN0IHJldCA9IHt9Ow0KICAgICAgaWYgKHRoaXMuZ3V0dGVyKSB7DQogICAgICAgIHJldC5tYXJnaW5SaWdodCA9IGAke3RoaXMuZ3V0dGVyIC8gMn1weGA7DQogICAgICB9DQogICAgICByZXR1cm4gcmV0Ow0KICAgIH0NCiAgfSwNCiAgY3JlYXRlZCgpIHsNCiAgICAvLyDmmL7pmpDliJfliJ3lp4vpu5jorqTpmpDol4/liJcNCiAgICBmb3IgKGxldCBpdGVtIGluIHRoaXMuY29sdW1ucykgew0KICAgICAgaWYgKHRoaXMuY29sdW1uc1tpdGVtXS52aXNpYmxlID09PSBmYWxzZSkgew0KICAgICAgICB0aGlzLnZhbHVlLnB1c2gocGFyc2VJbnQoaXRlbSkpOw0KICAgICAgfQ0KICAgIH0NCiAgfSwNCiAgbWV0aG9kczogew0KICAgIC8vIOaQnOe0og0KICAgIHRvZ2dsZVNlYXJjaCgpIHsNCiAgICAgIHRoaXMuJGVtaXQoInVwZGF0ZTpzaG93U2VhcmNoIiwgIXRoaXMuc2hvd1NlYXJjaCk7DQogICAgfSwNCiAgICAvLyDliLfmlrANCiAgICByZWZyZXNoKCkgew0KICAgICAgdGhpcy4kZW1pdCgicXVlcnlUYWJsZSIpOw0KICAgIH0sDQogICAgLy8g5Y+z5L6n5YiX6KGo5YWD57Sg5Y+Y5YyWDQogICAgZGF0YUNoYW5nZShkYXRhKSB7DQogICAgICBmb3IgKGxldCBpdGVtIGluIHRoaXMuY29sdW1ucykgew0KICAgICAgICBjb25zdCBrZXkgPSB0aGlzLmNvbHVtbnNbaXRlbV0ua2V5Ow0KICAgICAgICB0aGlzLmNvbHVtbnNbaXRlbV0udmlzaWJsZSA9ICFkYXRhLmluY2x1ZGVzKGtleSk7DQogICAgICB9DQogICAgfSwNCiAgICAvLyDmiZPlvIDmmL7pmpDliJdkaWFsb2cNCiAgICBzaG93Q29sdW1uKCkgew0KICAgICAgdGhpcy5vcGVuID0gdHJ1ZTsNCiAgICB9LA0KICB9LA0KfTsNCg=="},{"version":3,"sources":["index.vue"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAwBA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"index.vue","sourceRoot":"src/components/RightToolbar","sourcesContent":["<template>\r\n  <div class=\"top-right-btn\" :style=\"style\">\r\n    <el-row>\r\n      <el-tooltip class=\"item\" effect=\"dark\" :content=\"showSearch ? '隐藏搜索' : '显示搜索'\" placement=\"top\" v-if=\"search\">\r\n        <el-button size=\"mini\" circle icon=\"el-icon-search\" @click=\"toggleSearch()\" />\r\n      </el-tooltip>\r\n      <el-tooltip class=\"item\" effect=\"dark\" content=\"刷新\" placement=\"top\">\r\n        <el-button size=\"mini\" circle icon=\"el-icon-refresh\" @click=\"refresh()\" />\r\n      </el-tooltip>\r\n      <el-tooltip class=\"item\" effect=\"dark\" content=\"显隐列\" placement=\"top\" v-if=\"columns\">\r\n        <el-button size=\"mini\" circle icon=\"el-icon-menu\" @click=\"showColumn()\" />\r\n      </el-tooltip>\r\n    </el-row>\r\n    <el-dialog :title=\"title\" :visible.sync=\"open\" append-to-body>\r\n      <el-transfer\r\n        :titles=\"['显示', '隐藏']\"\r\n        v-model=\"value\"\r\n        :data=\"columns\"\r\n        @change=\"dataChange\"\r\n      ></el-transfer>\r\n    </el-dialog>\r\n  </div>\r\n</template>\r\n<script>\r\nexport default {\r\n  name: \"RightToolbar\",\r\n  data() {\r\n    return {\r\n      // 显隐数据\r\n      value: [],\r\n      // 弹出层标题\r\n      title: \"显示/隐藏\",\r\n      // 是否显示弹出层\r\n      open: false,\r\n    };\r\n  },\r\n  props: {\r\n    showSearch: {\r\n      type: Boolean,\r\n      default: true,\r\n    },\r\n    columns: {\r\n      type: Array,\r\n    },\r\n    search: {\r\n      type: Boolean,\r\n      default: true,\r\n    },\r\n    gutter: {\r\n      type: Number,\r\n      default: 10,\r\n    },\r\n  },\r\n  computed: {\r\n    style() {\r\n      const ret = {};\r\n      if (this.gutter) {\r\n        ret.marginRight = `${this.gutter / 2}px`;\r\n      }\r\n      return ret;\r\n    }\r\n  },\r\n  created() {\r\n    // 显隐列初始默认隐藏列\r\n    for (let item in this.columns) {\r\n      if (this.columns[item].visible === false) {\r\n        this.value.push(parseInt(item));\r\n      }\r\n    }\r\n  },\r\n  methods: {\r\n    // 搜索\r\n    toggleSearch() {\r\n      this.$emit(\"update:showSearch\", !this.showSearch);\r\n    },\r\n    // 刷新\r\n    refresh() {\r\n      this.$emit(\"queryTable\");\r\n    },\r\n    // 右侧列表元素变化\r\n    dataChange(data) {\r\n      for (let item in this.columns) {\r\n        const key = this.columns[item].key;\r\n        this.columns[item].visible = !data.includes(key);\r\n      }\r\n    },\r\n    // 打开显隐列dialog\r\n    showColumn() {\r\n      this.open = true;\r\n    },\r\n  },\r\n};\r\n</script>\r\n<style lang=\"scss\" scoped>\r\n::v-deep .el-transfer__button {\r\n  border-radius: 50%;\r\n  padding: 12px;\r\n  display: block;\r\n  margin-left: 0px;\r\n}\r\n::v-deep .el-transfer__button:first-child {\r\n  margin-bottom: 10px;\r\n}\r\n</style>\r\n"]}]}