|
|
@@ -4,287 +4,315 @@
|
|
|
</div>
|
|
|
</template>
|
|
|
<script>
|
|
|
-import {Gantt} from './gantt';
|
|
|
-import "dhtmlx-gantt/codebase/dhtmlxgantt.css"
|
|
|
-import {proStatusEnum} from "@/enum/dict";
|
|
|
-import {deepClone} from "@/utils";
|
|
|
-let gantt = new Gantt();
|
|
|
-let i = 0
|
|
|
-export default {
|
|
|
- name: 'gantt',
|
|
|
- props: {
|
|
|
- ganttTasks: {
|
|
|
- type: Array,
|
|
|
- default: () => {
|
|
|
- return []
|
|
|
+ import { Gantt } from './gantt';
|
|
|
+ import 'dhtmlx-gantt/codebase/dhtmlxgantt.css';
|
|
|
+ import { proStatusEnum } from '@/enum/dict';
|
|
|
+ import { deepClone } from '@/utils';
|
|
|
+ let gantt = new Gantt();
|
|
|
+ let i = 0;
|
|
|
+ export default {
|
|
|
+ name: 'gantt',
|
|
|
+ props: {
|
|
|
+ ganttTasks: {
|
|
|
+ type: Array,
|
|
|
+ default: () => {
|
|
|
+ return [];
|
|
|
+ }
|
|
|
}
|
|
|
},
|
|
|
- },
|
|
|
- watch: {
|
|
|
- ganttTasks: {
|
|
|
- handler(val) {
|
|
|
- this.initData()
|
|
|
- },
|
|
|
- deep: true
|
|
|
- }
|
|
|
- },
|
|
|
- data() {
|
|
|
- return {
|
|
|
- ganttData: []
|
|
|
- }
|
|
|
- },
|
|
|
- created() {
|
|
|
- console.log(gantt);
|
|
|
- },
|
|
|
- mounted() {
|
|
|
- this.initGantt() // gantt初始化配置
|
|
|
- this.initData() // 数据format以及gantt reload
|
|
|
- },
|
|
|
-
|
|
|
- methods: {
|
|
|
- initGantt() {
|
|
|
+ watch: {
|
|
|
+ ganttTasks: {
|
|
|
+ handler(val) {
|
|
|
+ this.initData();
|
|
|
+ },
|
|
|
+ deep: true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ data() {
|
|
|
+ return {
|
|
|
+ ganttData: []
|
|
|
+ };
|
|
|
+ },
|
|
|
+ created() {
|
|
|
+ console.log(gantt);
|
|
|
+ },
|
|
|
+ mounted() {
|
|
|
+ this.initGantt(); // gantt初始化配置
|
|
|
+ this.initData(); // 数据format以及gantt reload
|
|
|
+ },
|
|
|
|
|
|
- let _this = this
|
|
|
- // 在初始化前设置配置项
|
|
|
- // gantt只读
|
|
|
- //设置图表区域的日期坐标最大值 var date = new Date(dateString.replace(/-/,"/"))
|
|
|
- // gantt.config.start_date = new Date("2020-04-08".replace(/-/,"/")) ;
|
|
|
- //gantt.config.end_date = new Date("2020-04-18".replace(/-/,"/")) ; //结束时间需要+1天
|
|
|
- gantt.config.readonly = true;
|
|
|
- gantt.config.select_task = false;
|
|
|
- gantt.config.autofit = false;
|
|
|
- gantt.config.xml_date = "%Y/%m/%d";
|
|
|
- // //设置x轴日期
|
|
|
- // gantt.config.scale_unit = 'day'
|
|
|
- // gantt.config.step = 1
|
|
|
- // gantt.config.date_scale = '星期' + '%D'
|
|
|
- gantt.config.columns = [
|
|
|
- {
|
|
|
- name: "name", width: 160, label: "名称", align: "left", tree: true,
|
|
|
- template: function (obj) {
|
|
|
- // 通过 template 回调可以指定返回内容值
|
|
|
- return `
|
|
|
+ methods: {
|
|
|
+ initGantt() {
|
|
|
+ let _this = this;
|
|
|
+ // 在初始化前设置配置项
|
|
|
+ // gantt只读
|
|
|
+ //设置图表区域的日期坐标最大值 var date = new Date(dateString.replace(/-/,"/"))
|
|
|
+ // gantt.config.start_date = new Date("2020-04-08".replace(/-/,"/")) ;
|
|
|
+ //gantt.config.end_date = new Date("2020-04-18".replace(/-/,"/")) ; //结束时间需要+1天
|
|
|
+ gantt.config.readonly = true;
|
|
|
+ gantt.config.select_task = false;
|
|
|
+ gantt.config.autofit = false;
|
|
|
+ gantt.config.xml_date = '%Y/%m/%d';
|
|
|
+ // //设置x轴日期
|
|
|
+ // gantt.config.scale_unit = 'day'
|
|
|
+ // gantt.config.step = 1
|
|
|
+ // gantt.config.date_scale = '星期' + '%D'
|
|
|
+ gantt.config.columns = [
|
|
|
+ {
|
|
|
+ name: 'name',
|
|
|
+ width: 160,
|
|
|
+ label: '名称',
|
|
|
+ align: 'left',
|
|
|
+ tree: true,
|
|
|
+ template: function (obj) {
|
|
|
+ // 通过 template 回调可以指定返回内容值
|
|
|
+ return `
|
|
|
<div class="gantt-span-${obj.level}" style="width:130px;text-overflow:ellipsis;overflow: hidden;">${obj.name}</div>
|
|
|
`;
|
|
|
+ }
|
|
|
},
|
|
|
- },
|
|
|
-
|
|
|
- ];
|
|
|
- let daysStyle = function (date) {
|
|
|
- let todayDate = new Date().setHours(0, 0, 0, 0)
|
|
|
- let paramsDate = new Date(date).setHours(0, 0, 0, 0)
|
|
|
- if (todayDate === paramsDate) {
|
|
|
- return "today";
|
|
|
- }
|
|
|
- if (date.getDay() === 0 || date.getDay() === 6) {
|
|
|
- return "weekend";
|
|
|
- }
|
|
|
- return "";
|
|
|
- };
|
|
|
- gantt.config.scales = [
|
|
|
- // {unit: "month", step: 1, format: "%Y/%M"},
|
|
|
- {unit: "day", format: "%d", css:daysStyle},
|
|
|
- {unit:"day", step:1, date:"星期"+"%D" },
|
|
|
- ];
|
|
|
- //这里在时间轴表格内的cell上添加class
|
|
|
- gantt.templates.timeline_cell_class = function (item, date) {
|
|
|
- if (date.getDay() == 0 || date.getDay() == 6) {
|
|
|
- return "weekend"
|
|
|
- }
|
|
|
- };
|
|
|
- // 条形图里的文字
|
|
|
- gantt.templates.task_text = function (start, end, task) {
|
|
|
- return `<span style='text-align:left;'>执行人:${task.executor}</span>`;
|
|
|
- };
|
|
|
-// 条形图自定义class
|
|
|
- gantt.templates.task_class = function (start, end, task) {
|
|
|
- return `task-${task.level}`
|
|
|
- };
|
|
|
- gantt.config.scale_height = 60;
|
|
|
- gantt.config.task_height = 24;
|
|
|
- gantt.config.row_height = 25;
|
|
|
- gantt.config.min_column_width = 50;
|
|
|
- gantt.config.show_task_cells = false
|
|
|
- gantt.plugins({
|
|
|
- marker: true,
|
|
|
- });
|
|
|
- let today = new Date();
|
|
|
- gantt.addMarker({
|
|
|
- start_date: today,
|
|
|
- css: 'today',
|
|
|
- text: '',
|
|
|
- });
|
|
|
- gantt.plugins({
|
|
|
- tooltip: true
|
|
|
- });
|
|
|
-// 自定义tooltip内容
|
|
|
- gantt.templates.tooltip_text = function (start, end, task) {
|
|
|
- const t = gantt;
|
|
|
- return `<div style="font-size:14px;padding: 0 10px;width:250px;line-height:20px;white-space:normal;">
|
|
|
+ {
|
|
|
+ name: 'start_date',
|
|
|
+ width: 150,
|
|
|
+ label: '开始时间',
|
|
|
+ align: 'center'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: 'planEndDate',
|
|
|
+ width: 150,
|
|
|
+ label: '结束时间',
|
|
|
+ align: 'center'
|
|
|
+ },
|
|
|
+ {
|
|
|
+ name: 'duration',
|
|
|
+ width: 80,
|
|
|
+ label: '工时(天)',
|
|
|
+ align: 'center'
|
|
|
+ }
|
|
|
+ ];
|
|
|
+ let daysStyle = function (date) {
|
|
|
+ let todayDate = new Date().setHours(0, 0, 0, 0);
|
|
|
+ let paramsDate = new Date(date).setHours(0, 0, 0, 0);
|
|
|
+ if (todayDate === paramsDate) {
|
|
|
+ return 'today';
|
|
|
+ }
|
|
|
+ if (date.getDay() === 0 || date.getDay() === 6) {
|
|
|
+ return 'weekend';
|
|
|
+ }
|
|
|
+ return '';
|
|
|
+ };
|
|
|
+ gantt.config.scales = [
|
|
|
+ // {unit: "month", step: 1, format: "%Y/%M"},
|
|
|
+ { unit: 'day', format: '%d', css: daysStyle },
|
|
|
+ { unit: 'day', step: 1, date: '星期' + '%D' }
|
|
|
+ ];
|
|
|
+ //这里在时间轴表格内的cell上添加class
|
|
|
+ gantt.templates.timeline_cell_class = function (item, date) {
|
|
|
+ if (date.getDay() == 0 || date.getDay() == 6) {
|
|
|
+ return 'weekend';
|
|
|
+ }
|
|
|
+ };
|
|
|
+ // 条形图里的文字
|
|
|
+ gantt.templates.task_text = function (start, end, task) {
|
|
|
+ return `<div style='text-align:left;'> 名称:${task.executor}</div>`;
|
|
|
+ };
|
|
|
+ // 条形图自定义class
|
|
|
+ gantt.templates.task_class = function (start, end, task) {
|
|
|
+ return `task-${task.level}`;
|
|
|
+ };
|
|
|
+ gantt.config.scale_height = 60;
|
|
|
+ gantt.config.task_height = 24;
|
|
|
+ gantt.config.row_height = 25;
|
|
|
+ gantt.config.min_column_width = 50;
|
|
|
+ gantt.config.show_task_cells = false;
|
|
|
+ gantt.plugins({
|
|
|
+ marker: true
|
|
|
+ });
|
|
|
+ let today = new Date();
|
|
|
+ gantt.addMarker({
|
|
|
+ start_date: today,
|
|
|
+ css: 'today',
|
|
|
+ text: ''
|
|
|
+ });
|
|
|
+ gantt.plugins({
|
|
|
+ tooltip: true
|
|
|
+ });
|
|
|
+ // 自定义tooltip内容
|
|
|
+ gantt.templates.tooltip_text = function (start, end, task) {
|
|
|
+ // <p style="margin: 4px 0;">当前进度:${
|
|
|
+ // task.level == 5
|
|
|
+ // ? proStatusEnum[task.status]?.label
|
|
|
+ // : task.progress * 100 + '%'
|
|
|
+ // }</p>
|
|
|
+ // <p style="margin: 4px 0;">标准工时:${task.standardTime}</p>
|
|
|
+ // <p style="margin: 4px 0;">实际工时:${task.actualTime}</p>
|
|
|
+ const t = gantt;
|
|
|
+ return `<div style="font-size:14px;padding: 0 10px;width:250px;line-height:20px;white-space:normal;">
|
|
|
<p style="font-weight:bold;margin: 8px 0;">名称:${task.text}</p>
|
|
|
- <p style="margin: 4px 0;">当前进度:${task.level == 5 ? proStatusEnum[task.status]?.label : task.progress * 100 + '%'}</p>
|
|
|
- <p style="margin: 4px 0;">标准工时:${task.standardTime}</p>
|
|
|
- <p style="margin: 4px 0;">实际工时:${task.actualTime}</p>
|
|
|
+
|
|
|
<p style="margin: 4px 0;">状态:${proStatusEnum[task.status]?.label}</p>
|
|
|
</div>`;
|
|
|
- }
|
|
|
- gantt.attachEvent("onTaskClick", function(id,e){
|
|
|
- let box = document.querySelector('.gantt_tooltip');
|
|
|
- if (box) {
|
|
|
- box.parentNode.removeChild(box);
|
|
|
- }
|
|
|
- let classList = e.target.className.split(' ')
|
|
|
- // 这里自定义了展开/收起树形的点击事件
|
|
|
- if (classList.includes('gantt_open')) {
|
|
|
- gantt.open(id); // 展开
|
|
|
- return true
|
|
|
- }
|
|
|
- if (classList.includes('gantt_close')) {
|
|
|
- gantt.close(id); // 收起
|
|
|
- return true
|
|
|
- }
|
|
|
- // 这里是其他的点击事件
|
|
|
- let task = _this.ganttData.find(item => {return item.id == id})
|
|
|
- if (task.taskType === 'stage') {
|
|
|
- // toDo()
|
|
|
- return true
|
|
|
- }
|
|
|
- });
|
|
|
- gantt.i18n.setLocale("cn");
|
|
|
- // 初始化gantt
|
|
|
- gantt.init(this.$refs.gantt);
|
|
|
- // 绑定数据
|
|
|
- gantt.parse({
|
|
|
- data: [], // 时间轴上横条的数据
|
|
|
- link: [] // 连接线的数据
|
|
|
- });
|
|
|
- },
|
|
|
- reload() {
|
|
|
- console.log('重新渲染',this.ganttData);
|
|
|
- gantt.clearAll();// 从甘特图中删除所有任务和其他元素(包括标记)
|
|
|
- this.ganttData = deepClone(this.ganttData)
|
|
|
- gantt.parse({
|
|
|
- data: this.ganttData,
|
|
|
- link: []
|
|
|
- }); // 数据解析
|
|
|
- gantt.render(); // 呈现整个甘特图
|
|
|
- },
|
|
|
- getGanttData() {
|
|
|
- // toDo
|
|
|
- // formatGanttData()
|
|
|
+ };
|
|
|
+ gantt.attachEvent('onTaskClick', function (id, e) {
|
|
|
+ let box = document.querySelector('.gantt_tooltip');
|
|
|
+ if (box) {
|
|
|
+ box.parentNode.removeChild(box);
|
|
|
+ }
|
|
|
+ let classList = e.target.className.split(' ');
|
|
|
+ // 这里自定义了展开/收起树形的点击事件
|
|
|
+ if (classList.includes('gantt_open')) {
|
|
|
+ gantt.open(id); // 展开
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ if (classList.includes('gantt_close')) {
|
|
|
+ gantt.close(id); // 收起
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ // 这里是其他的点击事件
|
|
|
+ let task = _this.ganttData.find((item) => {
|
|
|
+ return item.id == id;
|
|
|
+ });
|
|
|
+ if (task.taskType === 'stage') {
|
|
|
+ // toDo()
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ });
|
|
|
+ gantt.i18n.setLocale('cn');
|
|
|
+ // 初始化gantt
|
|
|
+ gantt.init(this.$refs.gantt);
|
|
|
+ // 绑定数据
|
|
|
+ gantt.parse({
|
|
|
+ data: [], // 时间轴上横条的数据
|
|
|
+ link: [] // 连接线的数据
|
|
|
+ });
|
|
|
+ },
|
|
|
+ reload() {
|
|
|
+ console.log('重新渲染', this.ganttData);
|
|
|
+ gantt.clearAll(); // 从甘特图中删除所有任务和其他元素(包括标记)
|
|
|
+ this.ganttData = deepClone(this.ganttData);
|
|
|
+ gantt.parse({
|
|
|
+ data: this.ganttData,
|
|
|
+ link: []
|
|
|
+ }); // 数据解析
|
|
|
+ gantt.render(); // 呈现整个甘特图
|
|
|
+ },
|
|
|
+ getGanttData() {
|
|
|
+ // toDo
|
|
|
+ // formatGanttData()
|
|
|
|
|
|
- this.ganttData = this.ganttTasks
|
|
|
- this.reload()
|
|
|
- },
|
|
|
- initData() {
|
|
|
- this.ganttData = this.ganttTasks.map((current, ind, arry) => {
|
|
|
- let newObj = {}
|
|
|
- if (current.level) { //存在type字段 说明非一级菜单,判断阶段的具体类型 设置不同颜色
|
|
|
- if (current.level == 1) { //项目
|
|
|
- newObj = Object.assign({}, current, {'color': '#fcca02'})
|
|
|
- } else if (current.level == 2) { //项目阶段
|
|
|
- newObj = Object.assign({}, current, {'color': '#fec0dc'})
|
|
|
- } else if (current.level == 3) { //计划
|
|
|
- newObj = Object.assign({}, current, {'color': '#62ddd4'})
|
|
|
- } else if (current.level == 4) {//计划节点
|
|
|
- newObj = Object.assign({}, current, {'color': '#d1a6ff'})
|
|
|
- } else if (current.level == 5) {//任务
|
|
|
- newObj = Object.assign({}, current, {'color': '#0e85fa'})
|
|
|
+ this.ganttData = this.ganttTasks;
|
|
|
+ this.reload();
|
|
|
+ },
|
|
|
+ initData() {
|
|
|
+ this.ganttData = this.ganttTasks.map((current, ind, arry) => {
|
|
|
+ let newObj = {};
|
|
|
+ if (current.level) {
|
|
|
+ //存在type字段 说明非一级菜单,判断阶段的具体类型 设置不同颜色
|
|
|
+ if (current.level == 1) {
|
|
|
+ //项目
|
|
|
+ newObj = Object.assign({}, current, { color: '#fcca02' });
|
|
|
+ } else if (current.level == 2) {
|
|
|
+ //项目阶段
|
|
|
+ newObj = Object.assign({}, current, { color: '#fec0dc' });
|
|
|
+ } else if (current.level == 3) {
|
|
|
+ //计划
|
|
|
+ newObj = Object.assign({}, current, { color: '#62ddd4' });
|
|
|
+ } else if (current.level == 4) {
|
|
|
+ //计划节点
|
|
|
+ newObj = Object.assign({}, current, { color: '#d1a6ff' });
|
|
|
+ } else if (current.level == 5) {
|
|
|
+ //任务
|
|
|
+ newObj = Object.assign({}, current, { color: '#0e85fa' });
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ //默认色
|
|
|
+ newObj = Object.assign({}, current, { color: '#5b0b83' });
|
|
|
}
|
|
|
- } else { //默认色
|
|
|
- newObj = Object.assign({}, current, {'color': '#5b0b83'})
|
|
|
- }
|
|
|
|
|
|
- return newObj
|
|
|
- })
|
|
|
- console.log(this.ganttData);
|
|
|
- this.reload()
|
|
|
+ return newObj;
|
|
|
+ });
|
|
|
+ console.log(this.ganttData);
|
|
|
+ this.reload();
|
|
|
+ }
|
|
|
},
|
|
|
-
|
|
|
-
|
|
|
- },
|
|
|
- activated() {
|
|
|
- console.log(gantt,i++);
|
|
|
- gantt.render(); // 呈现整个甘特图
|
|
|
- }
|
|
|
-}
|
|
|
+ activated() {
|
|
|
+ console.log(gantt, i++);
|
|
|
+ gantt.render(); // 呈现整个甘特图
|
|
|
+ }
|
|
|
+ };
|
|
|
</script>
|
|
|
<style lang="less" scoped>
|
|
|
-/*@import "dhtmlx-gantt/codebase/dhtmlxgantt.css"*/
|
|
|
-.gantt-box {
|
|
|
- width: calc(100%);
|
|
|
-
|
|
|
- height: calc(100%);
|
|
|
-}
|
|
|
-.gantt-container {
|
|
|
- width: calc(100%);
|
|
|
-
|
|
|
- height: calc(100%);
|
|
|
-}
|
|
|
-
|
|
|
+ /*@import "dhtmlx-gantt/codebase/dhtmlxgantt.css"*/
|
|
|
+ .gantt-box {
|
|
|
+ width: calc(100%);
|
|
|
|
|
|
+ height: calc(100%);
|
|
|
+ }
|
|
|
+ .gantt-container {
|
|
|
+ width: calc(100%);
|
|
|
|
|
|
+ height: calc(100%);
|
|
|
+ }
|
|
|
|
|
|
-/* 周末高亮 */
|
|
|
-/deep/ .weekend {
|
|
|
- background: #F8F8F8;
|
|
|
- color: #676767 !important;
|
|
|
- // height: 47px!important;
|
|
|
-}
|
|
|
+ /* 周末高亮 */
|
|
|
+ /deep/ .weekend {
|
|
|
+ background: #f8f8f8;
|
|
|
+ color: #676767 !important;
|
|
|
+ // height: 47px!important;
|
|
|
+ }
|
|
|
|
|
|
-/* 今日高亮 */
|
|
|
-/deep/ .gantt_task_scale {
|
|
|
- .gantt_scale_line > .gantt_scale_cell {
|
|
|
- color: #333333;
|
|
|
+ /* 今日高亮 */
|
|
|
+ /deep/ .gantt_task_scale {
|
|
|
+ .gantt_scale_line > .gantt_scale_cell {
|
|
|
+ color: #333333;
|
|
|
|
|
|
- &.today {
|
|
|
- background: #72b9ff;
|
|
|
- color: #FFFFFF;
|
|
|
+ &.today {
|
|
|
+ background: #72b9ff;
|
|
|
+ color: #ffffff;
|
|
|
+ }
|
|
|
}
|
|
|
}
|
|
|
-}
|
|
|
-/* 去掉文件夹图标 */
|
|
|
-/deep/ .gantt_tree_icon {
|
|
|
- &.gantt_folder_closed, &.gantt_file, &.gantt_folder_open {
|
|
|
- display:none
|
|
|
+ /* 去掉文件夹图标 */
|
|
|
+ /deep/ .gantt_tree_icon {
|
|
|
+ &.gantt_folder_closed,
|
|
|
+ &.gantt_file,
|
|
|
+ &.gantt_folder_open {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
}
|
|
|
-}
|
|
|
-/* 把展开收起图标替换成element-ui的icon */
|
|
|
-/* 这里没有找到在js中配置图标的方法,为省事,使用css */
|
|
|
-/* 扒了element-ui的icon样式表 */
|
|
|
-/deep/ .gantt_tree_icon.gantt_open {
|
|
|
- background-image: none;
|
|
|
- font-family: element-icons!important;
|
|
|
- speak: none;
|
|
|
- font-style: normal;
|
|
|
- font-weight: 400;
|
|
|
- font-variant: normal;
|
|
|
- text-transform: none;
|
|
|
- vertical-align: baseline;
|
|
|
- display: inline-block;
|
|
|
- -webkit-font-smoothing: antialiased;
|
|
|
- -moz-osx-font-smoothing: grayscale;
|
|
|
- &::before {
|
|
|
- content: "\e6df";
|
|
|
+ /* 把展开收起图标替换成element-ui的icon */
|
|
|
+ /* 这里没有找到在js中配置图标的方法,为省事,使用css */
|
|
|
+ /* 扒了element-ui的icon样式表 */
|
|
|
+ /deep/ .gantt_tree_icon.gantt_open {
|
|
|
+ background-image: none;
|
|
|
+ font-family: element-icons !important;
|
|
|
+ speak: none;
|
|
|
+ font-style: normal;
|
|
|
+ font-weight: 400;
|
|
|
+ font-variant: normal;
|
|
|
+ text-transform: none;
|
|
|
+ vertical-align: baseline;
|
|
|
+ display: inline-block;
|
|
|
+ -webkit-font-smoothing: antialiased;
|
|
|
+ -moz-osx-font-smoothing: grayscale;
|
|
|
+ &::before {
|
|
|
+ content: '\e6df';
|
|
|
+ }
|
|
|
}
|
|
|
-}
|
|
|
-/deep/ .gantt_tree_icon.gantt_close {
|
|
|
- background-image: none;
|
|
|
- font-family: element-icons!important;
|
|
|
- speak: none;
|
|
|
- font-style: normal;
|
|
|
- font-weight: 400;
|
|
|
- font-variant: normal;
|
|
|
- text-transform: none;
|
|
|
- vertical-align: baseline;
|
|
|
- display: inline-block;
|
|
|
- -webkit-font-smoothing: antialiased;
|
|
|
- -moz-osx-font-smoothing: grayscale;
|
|
|
- &::before {
|
|
|
- content: "\e6e1";
|
|
|
+ /deep/ .gantt_tree_icon.gantt_close {
|
|
|
+ background-image: none;
|
|
|
+ font-family: element-icons !important;
|
|
|
+ speak: none;
|
|
|
+ font-style: normal;
|
|
|
+ font-weight: 400;
|
|
|
+ font-variant: normal;
|
|
|
+ text-transform: none;
|
|
|
+ vertical-align: baseline;
|
|
|
+ display: inline-block;
|
|
|
+ -webkit-font-smoothing: antialiased;
|
|
|
+ -moz-osx-font-smoothing: grayscale;
|
|
|
+ &::before {
|
|
|
+ content: '\e6e1';
|
|
|
+ }
|
|
|
}
|
|
|
-}
|
|
|
-
|
|
|
-
|
|
|
</style>
|
|
|
-
|