当前位置:首页 > VUE

vue实现小说目录

2026-03-29 17:30:33VUE

Vue 实现小说目录的步骤

数据准备

确保有小说章节数据,通常是一个数组,每个元素包含章节标题和内容。例如:

chapters: [
  { title: "第一章", content: "..." },
  { title: "第二章", content: "..." }
]

目录列表渲染

使用 v-for 渲染目录列表,并绑定点击事件跳转章节:

<template>
  <div class="catalog">
    <ul>
      <li v-for="(chapter, index) in chapters" :key="index" @click="goToChapter(index)">
        {{ chapter.title }}
      </li>
    </ul>
  </div>
</template>

跳转逻辑实现

在 methods 中定义跳转方法,通过索引切换当前章节:

methods: {
  goToChapter(index) {
    this.currentChapter = this.chapters[index];
  }
}

当前章节高亮

通过动态 class 实现当前选中章节的高亮效果:

<li 
  v-for="(chapter, index) in chapters" 
  :class="{ active: currentChapterIndex === index }"
>
  {{ chapter.title }}
</li>

样式优化

添加基础样式美化目录列表:

.catalog ul {
  list-style: none;
  padding: 0;
}
.catalog li {
  padding: 8px;
  cursor: pointer;
}
.catalog li.active {
  background: #eee;
}

滚动定位增强

对于长目录可添加滚动定位功能,确保当前章节可见:

goToChapter(index) {
  this.currentChapterIndex = index;
  const element = this.$el.querySelectorAll('li')[index];
  element.scrollIntoView({ behavior: 'smooth' });
}

响应式设计

通过 CSS 媒体查询适配移动端:

@media (max-width: 768px) {
  .catalog {
    width: 100%;
  }
}

持久化当前阅读进度

使用 localStorage 保存阅读进度:

vue实现小说目录

// 保存进度
localStorage.setItem('lastReadChapter', this.currentChapterIndex);

// 初始化时读取
const savedChapter = localStorage.getItem('lastReadChapter');
if (savedChapter) {
  this.currentChapterIndex = Number(savedChapter);
}

标签: 目录小说
分享给朋友:

相关文章

vue设计与实现目录

vue设计与实现目录

以下是《Vue设计与实现》一书的典型目录结构框架(根据公开资料整理),内容涵盖Vue 3核心设计与源码解析: 第一部分 响应式系统 响应式的作用与实现原理 非原始值的响应式方案(Proxy与Re…

vue实现章节目录

vue实现章节目录

实现章节目录的基本思路 在Vue中实现章节目录功能,通常需要结合数据驱动和组件化思想。核心是通过数据管理章节结构,利用递归组件或动态渲染实现目录层级展示。 数据结构设计 建议使用嵌套结构存储章节信息…

react实现目录

react实现目录

React 实现目录的方法 使用 React 组件和状态管理 创建一个目录组件,通过状态管理来跟踪当前选中的目录项。可以使用 useState 钩子来管理状态。 import React, { us…

uniapp写的小说

uniapp写的小说

使用UniApp开发小说类应用 UniApp作为跨平台开发框架,适合构建小说阅读类应用。以下为关键实现方法: 项目结构与配置 在pages.json中配置小说阅读页、书架页等路由: { "pa…

vue 实现目录

vue 实现目录

Vue 实现目录功能 在 Vue 中实现目录功能通常涉及动态生成目录结构,并根据页面内容自动更新目录项。以下是几种常见的实现方法: 使用 vue-router 生成路由目录 通过 vue-route…

vue设计与实现目录

vue设计与实现目录

《Vue设计与实现》目录概览 该书深入解析Vue.js框架的设计思想与实现原理,以下是典型章节结构(具体可能因版本差异略有调整): 响应式系统 响应式数据的基本原理 依赖收集与触发机制…