| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="utf-8">
- <title>Vue.js grid component example</title>
- <link rel="stylesheet" href="style.css">
- <!-- Delete ".min" for console warnings in development -->
- <script src="../../../dist/vue.min.js"></script>
- </head>
- <body>
- <!-- component template -->
- <script type="text/x-template" id="grid-template">
- <table v-if="filteredData.length">
- <thead>
- <tr>
- <th v-for="key in columns"
- @click="sortBy(key)"
- :class="{ active: sortKey == key }">
- {{ key | capitalize }}
- <span class="arrow" :class="sortOrders[key] > 0 ? 'asc' : 'dsc'">
- </span>
- </th>
- </tr>
- </thead>
- <tbody>
- <tr v-for="entry in filteredData">
- <td v-for="key in columns">
- {{entry[key]}}
- </td>
- </tr>
- </tbody>
- </table>
- <p v-else>No matches found.</p>
- </script>
- <!-- demo root element -->
- <div id="demo">
- <form id="search">
- Search <input name="query" v-model="searchQuery">
- </form>
- <demo-grid
- :data="gridData"
- :columns="gridColumns"
- :filter-key="searchQuery">
- </demo-grid>
- </div>
- <script src="grid.js"></script>
- </body>
- </html>
|