12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8" />
- <meta name="viewport" content="width=device-width, initial-scale=1.0" />
- <title>Document</title>
- </head>
- <body>
- <div id="app">
- <h2>关键字搜索:<input type="text" v-model="keywords" /></h2>
- <ul>
- <li v-for="(item,index) in newList" :key="index">
- {{index+1}}-我叫{{item.name}}--今年{{item.age}}--是一个{{item.sex}}孩
- </li>
- </ul>
- <button @click="sortType = 1">升序</button><br /><br />
- <button @click="sortType = 2">降序</button><br /><br />
- <button @click="sortType = 0">默认排序</button>
- </div>
- <script src="./vue.js"></script>
- <script>
- var app = new Vue({
- data: {
- arr: [
- {
- name: "LiLi",
- age: 10,
- sex: "女",
- },
- {
- name: "John",
- age: 17,
- sex: "男",
- },
- {
- name: "Lucy",
- age: 22,
- sex: "女",
- },
- {
- name: "Jack",
- age: 20,
- sex: "男",
- },
- {
- name: "孙悟空",
- age: 33,
- sex: "男",
- },
- {
- name: "猪八戒",
- age: 30,
- sex: "男",
- },
- ],
- keywords: "",
- sortType: 0,
- List: [],
- },
- computed: {
- newList() {
- this.List = this.arr.filter((item) => {
- return item.name.indexOf(this.keywords) !== -1;
- });
- if (this.sortType) {
- this.List.sort((a,b) => {
- return this.sortType == 1 ? a.age - b.age : b.age - a.age;
- })
- }
- return this.List;
- },
- },
- }).$mount("#app");
- </script>
- </body>
- </html>
|