当前位置:首页 > VUE

vue实现学生列表

2026-01-21 04:00:10VUE

实现学生列表的Vue方案

数据准备

在Vue组件中定义学生数据数组,通常放在datasetup中。示例使用Composition API:

const students = ref([
  { id: 1, name: '张三', age: 18, grade: '高一' },
  { id: 2, name: '李四', age: 17, grade: '高二' }
])

列表渲染

使用v-for指令渲染学生列表,建议添加:key提升性能:

<ul>
  <li v-for="student in students" :key="student.id">
    {{ student.name }} - 年龄: {{ student.age }} 年级: {{ student.grade }}
  </li>
</ul>

表格形式展示

更规范的展示方式可采用表格布局:

<table class="student-table">
  <thead>
    <tr>
      <th>ID</th>
      <th>姓名</th>
      <th>年龄</th>
      <th>年级</th>
    </tr>
  </thead>
  <tbody>
    <tr v-for="student in students" :key="student.id">
      <td>{{ student.id }}</td>
      <td>{{ student.name }}</td>
      <td>{{ student.age }}</td>
      <td>{{ student.grade }}</td>
    </tr>
  </tbody>
</table>

样式优化

添加基础CSS增强可读性:

.student-table {
  width: 100%;
  border-collapse: collapse;
}
.student-table th, .student-table td {
  border: 1px solid #ddd;
  padding: 8px;
}
.student-table tr:nth-child(even) {
  background-color: #f2f2f2;
}

动态数据加载

实际项目通常从API获取数据:

const fetchStudents = async () => {
  try {
    const response = await axios.get('/api/students')
    students.value = response.data
  } catch (error) {
    console.error('获取学生列表失败:', error)
  }
}
onMounted(fetchStudents)

分页功能实现

处理大数据量的分页展示:

const pagination = reactive({
  currentPage: 1,
  pageSize: 10,
  total: 0
})

const paginatedStudents = computed(() => {
  const start = (pagination.currentPage - 1) * pagination.pageSize
  return students.value.slice(start, start + pagination.pageSize)
})

完整组件示例

<template>
  <div>
    <table class="student-table">
      <!-- 表格内容同上 -->
    </table>
    <div class="pagination">
      <button @click="pagination.currentPage--" :disabled="pagination.currentPage === 1">上一页</button>
      <span>第{{ pagination.currentPage }}页</span>
      <button @click="pagination.currentPage++" :disabled="pagination.currentPage * pagination.pageSize >= pagination.total">下一页</button>
    </div>
  </div>
</template>

<script setup>
// 脚本内容同上
</script>

vue实现学生列表

标签: 学生列表
分享给朋友:

相关文章

网页制作css 列表

网页制作css 列表

创建CSS列表样式 使用CSS可以自定义HTML列表(有序列表<ol>和无序列表<ul>)的外观,包括项目符号、缩进、颜色等。以下是一些常见的列表样式方法: 基础列表样式 通…

vue实现无线滚动列表

vue实现无线滚动列表

无限滚动列表的实现方法 无限滚动列表通常用于展示大量数据,通过动态加载数据减少初始渲染压力。以下是基于Vue的实现方法: 使用Intersection Observer API监听滚动 Inters…

vue 实现列表

vue 实现列表

Vue 实现列表的方法 在 Vue 中实现列表通常使用 v-for 指令,结合数组或对象进行渲染。以下是几种常见的实现方式: 基础列表渲染 通过 v-for 指令遍历数组,动态生成列表项。 &…

uniapp商品列表

uniapp商品列表

商品列表实现方法 在uniapp中实现商品列表功能,可以通过多种方式完成,以下是几种常见的方法: 使用scroll-view组件实现滚动列表 <scroll-view scroll-y=…

vue实现列表循环

vue实现列表循环

列表循环的实现方式 在Vue中实现列表循环主要依赖于v-for指令,该指令基于源数据多次渲染元素或模板块。 基础数组循环 使用v-for遍历数组时,语法为item in items或(item, i…

jquery 列表

jquery 列表

jQuery 列表操作 jQuery 提供了多种方法来操作 HTML 列表(如 <ul> 或 <ol>)。以下是一些常见的操作方式: 动态添加列表项 使用 append()…