TaskList.vue 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115
  1. <template>
  2. project-task-list
  3. <div class="taskListContainer">
  4. <div class="taskFunctionBar">
  5. <!-- 后期可以考虑吧 控制台也才抽出来作为组件 -->
  6. <div class="masterFunctionBar">
  7. <div class="taskList-logo">任务</div>
  8. <el-button size="small" type="warning" icon="el-icon-plus" >新建任务</el-button>
  9. </div>
  10. <div class="filterFunctionBar">
  11. <el-select size="small" class="subSelect taskScopeSelect" v-model="value" placeholder="全部">
  12. <el-option
  13. v-for="item in taskScope"
  14. :key="item.value"
  15. :label="item.label"
  16. :value="item.value">
  17. </el-option>
  18. </el-select>
  19. <el-select size="small" class="subSelect taskStatusSelect" v-model="value" placeholder="全部类型">
  20. <el-option
  21. v-for="item in taskStatus"
  22. :key="item.value"
  23. :label="item.label"
  24. :value="item.value">
  25. </el-option>
  26. </el-select>
  27. <el-select size="small" class="subSelect sortOptionsSelect" v-model="value" placeholder="默认排序">
  28. <el-option
  29. v-for="item in sortOptions"
  30. :key="item.value"
  31. :label="item.label"
  32. :value="item.value">
  33. </el-option>
  34. </el-select>
  35. </div>
  36. </div>
  37. <div class="taskTableContainer">
  38. <!-- 组件,然后 当展示的时候,将筛选的选项传入-->
  39. <!-- buglist和任务list复用-->
  40. <!-- 点击具体项的时候,任务的抽屉也是一个组件-->
  41. </div>
  42. </div>
  43. </template>
  44. <script>
  45. export default {
  46. data() {
  47. return {
  48. taskScope: [{
  49. value: 'all',
  50. label: '全部',
  51. }, {
  52. value: 'my',
  53. label: '分配到我',
  54. }],
  55. selectTaskScope: 'all',
  56. taskStatus: [{
  57. value: 'allStatus',
  58. label: '全部类型',
  59. }, {
  60. value: 'completed',
  61. label: '已完成',
  62. }, {
  63. value: 'ongoing',
  64. label: '进行中',
  65. }],
  66. selectTaskStatus: 'allStatus',
  67. sortOptions: [{
  68. value: 'default',
  69. label: '默认排序',
  70. }, {
  71. value: 'creationTimeFirst',
  72. label: '创建时间',
  73. }, {
  74. value: 'priority',
  75. label: '优先级',
  76. }],
  77. selectSortOptions: 'allStatus',
  78. };
  79. },
  80. };
  81. </script>
  82. <style scoped>
  83. .taskListContainer{
  84. margin: 30px 30px 0 30px;
  85. }
  86. .taskFunctionBar .masterFunctionBar{
  87. display: flex;
  88. align-items:center;
  89. justify-content:space-between;
  90. }
  91. .taskFunctionBar .filterFunctionBar{
  92. margin-top: 20px;
  93. display: flex;
  94. align-items:center;
  95. }
  96. .subSelect {
  97. width: 130px;
  98. }
  99. .taskScopeSelect{
  100. margin-left: 0px;
  101. }
  102. .taskStatusSelect{
  103. margin-left: 18px;
  104. }
  105. .sortOptionsSelect{
  106. margin-left: auto;
  107. }
  108. </style>