123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222 |
- var reqList = [];
- var util = {};
- util.treeTableXcode = function(data, xcode) {
- xcode = xcode || "";
- for(var i = 0; i < data.length; i++) {
- var item = data[i];
- item.xcode = xcode + i;
- if(item.children && item.children.length > 0) {
- util.treeTableXcode(item.children, item.xcode + "-");
- }
- }
- };
- Vue.use(Vuedals.default);
- new Vue({
- el: "#main",
- data: {
- tableData: [{
- id: "1",
- date: '2016-05-02',
- name: '王小虎',
- level: 1,
- address: '上海市普陀区金沙江路 1518 弄',
- children: [{
- id: "11",
- date: '2016-05-02',
- name: '王小虎',
- level: 2,
- address: '上海市普陀区金沙江路 1518 弄',
- children: [{
- id: "111",
- date: '2016-05-02',
- name: '王小虎',
- level: 3,
- address: '上海市普陀区金沙江路 1518 弄'
- }, {
- id: "112",
- level: 3,
- date: '2016-05-02',
- name: '王小虎',
- address: '上海市普陀区金沙江路 1518 弄'
- }, {
- id: "113",
- level: 3,
- date: '2016-05-02',
- name: '王小虎',
- address: '上海市普陀区金沙江路 1518 弄'
- }]
- }, {
- id: "12",
- level: 2,
- date: '2016-05-02',
- name: '王小虎',
- address: '上海市普陀区金沙江路 1518 弄'
- }, {
- id: "13",
- level: 2,
- date: '2016-05-02',
- name: '王小虎',
- address: '上海市普陀区金沙江路 1518 弄'
- }]
- }, {
- id: "2",
- level: 1,
- date: '2016-05-04',
- name: '王小虎',
- address: '上海市普陀区金沙江路 1517 弄'
- }, {
- id: "3",
- level: 1,
- date: '2016-05-01',
- name: '王小虎',
- address: '上海市普陀区金沙江路 1519 弄'
- }, {
- id: "4",
- level: 1,
- date: '2016-05-03',
- name: '王小虎',
- address: '上海市普陀区金沙江路 1516 弄'
- }],
- valueArea: "",
- optionsArea: [{
- value: '选项1',
- label: '黄金糕'
- }, {
- value: '选项2',
- label: '双皮奶'
- }, {
- value: '选项3',
- label: '蚵仔煎'
- }, {
- value: '选项4',
- label: '龙须面'
- }, {
- value: '选项5',
- label: '北京烤鸭'
- }],
- dateValue: "",
- defaultValue: ['00:00:00', '23:59:59'],
- pickerOptions: {
- shortcuts: [{
- text: '最近一周',
- onClick: function(picker) {
- var end = new Date();
- var start = new Date();
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
- picker.$emit('pick', [start, end]);
- }
- }, {
- text: '最近一个月',
- onClick: function(picker) {
- var end = new Date();
- var start = new Date();
- start.setMonth(start.getMonth() - 1);
- picker.$emit('pick', [start, end]);
- }
- }, {
- text: '最近三个月',
- onClick: function(picker) {
- var end = new Date();
- var start = new Date();
- start.setMonth(start.getMonth() - 3);
- picker.$emit('pick', [start, end]);
- },
- }, {
- text: '最近半年',
- onClick: function(picker) {
- var end = new Date();
- var start = new Date();
- start.setMonth(start.getMonth() - 6);
- picker.$emit('pick', [start, end]);
- },
- }, {
- text: '最近一年',
- onClick: function(picker) {
- var end = new Date();
- var start = new Date();
- start.setFullYear(start.getFullYear() - 1);
- picker.$emit('pick', [start, end]);
- },
- }],
- disabledDate: function(d) {
- return d > new Date();
- }
- }
- },
- components: {
- vuedals: Vuedals.Component
- },
- mounted: function() {
- var vm = this
- //初始化时间
- var end = new Date();
- var start = new Date();
- start.setFullYear(start.getFullYear() - 1);
- vm.dateValue = [start, end]
- //初始化数据
- vm.initData()
- $("#main").removeClass("c-hide");
- //监听后退按钮的操作
- EventBus.$on("back-click", function(arg) {
- history.go(-1);
- });
- //监听页面刷新
- EventBus.$on("refresh-click", function(arg) {
- alert("刷新")
- vm.initData()
- });
- window.onresize = function() {
-
- }
- },
- methods: {
- initData: function() {
- util.treeTableXcode(this.tableData);
- },
- changeDateValue: function() {
- alert(JSON.stringify(this.dateValue))
- },
- exportData: function() {
-
- },
- treeClick: function(item, index) {
- if(item.open) {
- this.collapse(item, index);
- } else {
- this.expand(item, index);
- }
- },
- expand: function(item, index) {
- if(!item.children) {
- return index;
- }
- //展开
- for(var i = 0; item.children && i < item.children.length; i++) {
- var child = item.children[i];
- this.tableData.splice(++index, 0, child);
- if(child.children && child.children.length > 0 && child.open) {
- index = this.expand(child, index);
- }
- }
- item.open = true;
- return index;
- },
- collapse: function(item, index) {
- if(!item.children) {
- return index;
- }
- //收缩
- item.open = false;
- var len = 0;
- for(var i = index + 1; i < this.tableData.length - 1; i++) {
- var xcode = this.tableData[i].xcode;
- if(xcode.startsWith(item.xcode + "-")) {
- len++;
- } else {
- break;
- }
- }
- this.tableData.splice(index + 1, len);
- }
- }
- });
|