酷代码 AI
菜单
全部AI  /  热门  /  AI写代码神器
服务商

1、使用ajax发送请求获取数据,地址为:https://api.apiopen.top/api/getlmages? page=1&size=10其中参数page为页码(默认从0开始),size为每页数据大小(本案例中可 以不用修改)。 2、使用vue的列表渲染完成数据的展示。 3、当点击“下一页”按钮时可以继续请求下一页数据并更新dom的渲染。(下一页原理就是 请求参数page的值+1,例如当前page=0,那么下一页page=1)。 4、当点击“上一页”按钮时可以返回上一页,如果已经是第一页,则按上一页没有任何反 应。

以下是一个使用 Vue 实现上述需求的示例代码: ```html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> <script src="https://cdn.jsdelivr.net/npm/vue@2.6.14/dist/vue.js"></script> <script src="https://unpkg.com/axios/dist/axios.min.js"></script> </head> <body> <div id="app"> <button @click="prevPage">上一页</button> <button @click="nextPage">下一页</button> <ul> <li v-for="item in dataList" :key="item.id">{{ item.name }}</li> </ul> </div> <script> var app = new Vue({ el: '#app', data: { page: 0, dataList: [] }, methods: { getImages() { axios.get(`https://api.apiopen.top/api/getlmages?page=${this.page}&size=10`) .then(response => { this.dataList = response.data; }) .catch(error => { console.error(error); }); }, nextPage() { if (this.page < 100) { // 假设最多 100 页 this.page++; this.getImages(); } }, prevPage() { if (this.page > 0) { this.page--; this.getImages(); } } }, created() { this.getImages(); } }); </script> </body> </html> ``` 在上述代码中: - `data` 中定义了当前页码 `page` 和数据列表 `dataList` 。 - `getImages` 方法用于发送 Ajax 请求获取数据。 - `nextPage` 方法实现下一页功能,当未超过最大页数时,页码加 1 并重新获取数据。 - `prevPage` 方法实现上一页功能,当页码大于 0 时,页码减 1 并重新获取数据。 - 在 `created` 钩子中初始获取第一页数据。 [2024-11-14 14:42:10 | AI写代码神器 | 570点数解答]

相关提问