Commit a061bc3a authored by aoobao's avatar aoobao

导出线段优化

parent f6c4f84a
......@@ -39,6 +39,7 @@ export default class MouseTool {
this._mouseTool.close()
// this._mouseTool.setMap(null)
this._mouseTool.g = null
this._mouseTool = null
}
}
......
<template>
<div class="export-container" v-show="visible">
<el-checkbox-group v-model="checkList" @change="handleCheckedCitiesChange">
<el-checkbox v-for="item in lineList" :label="item.id" :key="item.id">{{item.name}}</el-checkbox>
</el-checkbox-group>
<el-input style="margin-top:10px;" type="textarea" v-model="text" :rows="15" placeholder=""></el-input>
</div>
</template>
<script>
import { LineToString } from '@/assets/utils'
export default {
props: {
visible: Boolean,
lineList: Array
},
data () {
return {
checkList: [],
text: null
}
},
computed: {
checkLineList () {
let list = this.checkList.map(id => {
let obj = this.lineList.find(t => t.id == id)
return obj
})
return list
}
},
methods: {
handleCheckedCitiesChange () {
// console.log(val)
let list = this.checkLineList
let sb = ''
for (let i = 0; i < list.length; i++) {
const lineObj = list[i];
let st = LineToString(lineObj.line)
sb += '|' + st
}
if (sb.length) {
sb = sb.substr(1)
}
this.text = sb
this.$emit('exportLine', list.map(t => t.id))
}
}
}
</script>
<style lang="scss" scoped>
.export-container {
position: absolute;
right: 0px;
top: 45px;
width: 400px;
height: calc(100% - 50px);
background-color: #fff;
}
</style>
<template>
<div class="export-container" v-show="visible">
<el-checkbox-group v-model="checkList" @change="handleCheckedCitiesChange">
<el-checkbox v-for="item in lineList" :label="item.id" :key="item.id">{{item.name}}</el-checkbox>
</el-checkbox-group>
<el-input style="margin-top:10px;" type="textarea" v-model="text" :rows="15" placeholder=""></el-input>
</div>
</template>
<script>
import { LineToString } from '@/assets/utils'
export default {
props: {
visible: Boolean,
lineList: Array
},
data () {
return {
checkList: [],
text: null
}
},
computed: {
checkLineList () {
let list = this.checkList.map(id => {
let obj = this.lineList.find(t => t.id == id)
return obj
})
return list
}
},
mounted () {
},
methods: {
handleCheckedCitiesChange () {
// console.log(val)
let list = this.checkLineList
let sb = ''
for (let i = 0; i < list.length; i++) {
const lineObj = list[i];
let st = LineToString(lineObj.line)
sb += '|' + st
}
if (sb.length) {
sb = sb.substr(1)
}
this.text = sb
this.$emit('exportLine', list.map(t => t.id))
}
},
watch: {
visible (val) {
if (val) {
this.checkList = this.lineList.map(t => t.id)
this.handleCheckedCitiesChange()
}
}
}
}
</script>
<style lang="scss" scoped>
.export-container {
position: absolute;
right: 0px;
top: 45px;
width: 400px;
height: calc(100% - 50px);
background-color: #fff;
}
</style>
......@@ -307,6 +307,21 @@ export default {
height: width + 'px'
}
}
},
watch: {
exportVisible (val) {
if (!val) {
let list = this.lineList.map(lineObj => {
return {
...lineObj,
color: 'blue',
lastPointColor: undefined,
lastPointSize: undefined
}
});
this.lineList = list
}
}
}
}
</script>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment