EditLine.vue 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. <template>
  2. <div class="edit-line">
  3. <el-form
  4. ref="modalFormComp"
  5. :model="modalForm"
  6. :key="modalForm.id"
  7. label-width="100px"
  8. >
  9. <el-form-item label="线条颜色:">
  10. <color-select v-model="modalForm.color"></color-select>
  11. </el-form-item>
  12. <el-form-item label="线条粗细:">
  13. <line-width-select v-model="modalForm.bold"></line-width-select>
  14. </el-form-item>
  15. <el-form-item label="线条形状:">
  16. <line-style-select v-model="modalForm.style"></line-style-select>
  17. </el-form-item>
  18. </el-form>
  19. </div>
  20. </template>
  21. <script>
  22. import ColorSelect from "../../components/common/ColorSelect";
  23. import LineStyleSelect from "../../components/common/LineStyleSelect";
  24. import LineWidthSelect from "../../components/common/LineWidthSelect";
  25. const initModalForm = {
  26. id: "",
  27. bold: "1px",
  28. color: "#000000",
  29. style: "solid"
  30. };
  31. export default {
  32. name: "edit-line",
  33. components: { ColorSelect, LineStyleSelect, LineWidthSelect },
  34. props: {
  35. instance: {
  36. type: Object,
  37. default() {
  38. return {};
  39. }
  40. }
  41. },
  42. data() {
  43. return {
  44. modalForm: { ...initModalForm }
  45. };
  46. },
  47. mounted() {
  48. this.initData(this.instance);
  49. },
  50. methods: {
  51. initData(val) {
  52. this.modalForm = { ...val };
  53. },
  54. submit() {
  55. this.$emit("modified", this.modalForm);
  56. }
  57. }
  58. };
  59. </script>