github.com/insionng/yougam@v0.0.0-20170714101924-2bc18d833463/public/libs/vue-1.0.24/examples/grid/grid.js (about)

     1  // register the grid component
     2  Vue.component('demo-grid', {
     3    template: '#grid-template',
     4    replace: true,
     5    props: {
     6      data: Array,
     7      columns: Array,
     8      filterKey: String
     9    },
    10    data: function () {
    11      var sortOrders = {}
    12      this.columns.forEach(function (key) {
    13        sortOrders[key] = 1
    14      })
    15      return {
    16        sortKey: '',
    17        sortOrders: sortOrders
    18      }
    19    },
    20    methods: {
    21      sortBy: function (key) {
    22        this.sortKey = key
    23        this.sortOrders[key] = this.sortOrders[key] * -1
    24      }
    25    }
    26  })
    27  
    28  // bootstrap the demo
    29  var demo = new Vue({
    30    el: '#demo',
    31    data: {
    32      searchQuery: '',
    33      gridColumns: ['name', 'power'],
    34      gridData: [
    35        { name: 'Chuck Norris', power: Infinity },
    36        { name: 'Bruce Lee', power: 9000 },
    37        { name: 'Jackie Chan', power: 7000 },
    38        { name: 'Jet Li', power: 8000 }
    39      ]
    40    }
    41  })