setting.vue 2.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100
  1. <!--
  2. * @description: 标题属性设置面板
  3. * @Date: 2022-08-17 16:53:28
  4. * @Author: shiyi
  5. -->
  6. <template>
  7. <div class="bs-setting-wrap">
  8. <el-form
  9. ref="form"
  10. label-width="100px"
  11. label-position="left"
  12. :model="config"
  13. :rules="rules"
  14. class="bs-el-form"
  15. >
  16. <SettingTitle>位置</SettingTitle>
  17. <div class="lc-field-body">
  18. <PosWhSetting :config="config" />
  19. </div>
  20. <SettingTitle v-if="config.border">边框</SettingTitle>
  21. <div class="lc-field-body">
  22. <BorderSetting
  23. v-if="config.border"
  24. label-width="100px"
  25. :config="config.border"
  26. />
  27. </div>
  28. <SettingTitle>基础</SettingTitle>
  29. <div class="lc-field-body">
  30. <el-form-item
  31. label="激活颜色"
  32. label-width="100px"
  33. >
  34. <el-color-picker
  35. v-model="config.customize.activeColor"
  36. popper-class="bs-el-color-picker"
  37. class="bs-el-color-picker"
  38. />
  39. </el-form-item>
  40. <el-form-item
  41. label="非激活颜色"
  42. label-width="100px"
  43. >
  44. <el-color-picker
  45. v-model="config.customize.inactiveColor"
  46. popper-class="bs-el-color-picker"
  47. class="bs-el-color-picker"
  48. />
  49. </el-form-item>
  50. </div>
  51. </el-form>
  52. </div>
  53. </template>
  54. <script>
  55. import SettingTitle from 'data-room-ui/SettingTitle/index.vue'
  56. import PosWhSetting from 'data-room-ui/BigScreenDesign/RightSetting/PosWhSetting.vue'
  57. import BorderSetting from 'data-room-ui/BigScreenDesign/RightSetting/BorderSetting.vue'
  58. export default {
  59. name: 'ThemeSwitcherSetting',
  60. components: {
  61. PosWhSetting,
  62. SettingTitle,
  63. BorderSetting
  64. },
  65. data () {
  66. return {
  67. rules: {
  68. title: [
  69. { required: true, message: '请输入标题', trigger: 'blur' }
  70. ]
  71. }
  72. }
  73. },
  74. computed: {
  75. config: {
  76. get () {
  77. return this.$store.state.bigScreen.activeItemConfig
  78. },
  79. set (val) {
  80. this.$store.state.bigScreen.activeItemConfig = val
  81. }
  82. }
  83. },
  84. watch: {
  85. },
  86. mounted () {},
  87. methods: {
  88. }
  89. }
  90. </script>
  91. <style lang="scss" scoped>
  92. @import "../../assets/style/settingWrap.scss";
  93. .bs-setting-wrap{
  94. padding-top: 16px;
  95. }
  96. .lc-field-body {
  97. padding: 12px 16px;
  98. }
  99. </style>