You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

96 lines
4.0 KiB

2 years ago
const app = {
data() {
return {
list: [
{
num: 1, schoolName: '长春市第一实验小学1',
projectList:
[{ projectName: '项目立项', projectCount: 2, className: 'aaa' }, { projectName: '招标采购', projectCount: 3 }, { projectName: '实施验收', projectCount: 4 }, { projectName: '项目拨付', projectCount: 5 }],
completionRate: 100
},
{
num: 2, schoolName: '长春市十一高中',
projectList:
[{ projectName: '项目立项', projectCount: 6 }, { projectName: '招标采购', projectCount: 5 }, { projectName: '实施验收', projectCount: 4 }, { projectName: '项目拨付', projectCount: 3 }],
completionRate: 98
},
{
num: 3, schoolName: '长春市第一实验小学',
projectList:
[{ projectName: '项目立项', projectCount: 6 }, { projectName: '招标采购', projectCount: 5 }, { projectName: '实施验收', projectCount: 4 }, { projectName: '项目拨付', projectCount: 3 }],
completionRate: 90
},
{
num: 4, schoolName: '长春市十一高中',
projectList:
[{ projectName: '项目立项', projectCount: 6 }, { projectName: '招标采购', projectCount: 5 }, { projectName: '实施验收', projectCount: 4 }, { projectName: '项目拨付', projectCount: 3 }],
completionRate: 88
},
{
num: 5, schoolName: '长春市第六中学',
projectList:
[{ projectName: '项目立项', projectCount: 6 }, { projectName: '招标采购', projectCount: 5 }, { projectName: '实施验收', projectCount: 4 }, { projectName: '项目拨付', projectCount: 3 }],
completionRate: 79
}
],
tabTitle: ['完成率', '项目立项', '招标采购', '实施验收', '项目拨付', '项目结束'],
cur: 0
}
},
mounted() {
this.getQsfb();
this.getWnfb();
this.getSsjd();
this.numJump();
setTimeout(() => {
this.numJumpRandom();
}, Math.round(Math.random() * 5000 + 5000));
},
methods: {
tabClick: function (index) {
this.cur = index;
},
getQsfb() {
let qsfbDiv = echarts.init(document.getElementById('qsfb'), 'white', { renderer: 'canvas' });
qsfbDiv.clear();
qsfbDiv.setOption(qsfbData);
qsfbDiv.resize();
},
getWnfb() {
let wnfbDiv = echarts.init(document.getElementById('wnfb'), 'white', { renderer: 'canvas' });
wnfbDiv.clear();
wnfbDiv.setOption(wnfbData);
wnfbDiv.resize();
},
getSsjd() {
let ssjdDiv = echarts.init(document.getElementById('ssjd'), 'white', { renderer: 'canvas' });
ssjdDiv.clear();
ssjdDiv.setOption(ssjdData);
ssjdDiv.resize();
},
numJumpRandom() {
let r = Math.round(Math.random() * 5000 + 5000);
this.numJump();
setTimeout(() => {
this.numJumpRandom();
}, r);
},
numJump() {
var xmlxNum = new CountUp("xmlxNum", 0, 128, 0, 2.5);
var zbcgNum = new CountUp("zbcgNum", 0, 121, 0, 2.3);
var ssysNum = new CountUp("ssysNum", 0, 60, 0, 2.1);
var xmbfNum = new CountUp("xmbfNum", 0, 26, 0, 2);
xmlxNum.start();
zbcgNum.start();
ssysNum.start();
xmbfNum.start();
}
}
}
Vue.createApp(app).component('Vue3SeamlessScroll', Vue3SeamlessScroll.Vue3SeamlessScroll).mount("#app");