Skip to content

vue技术栈+express+node爬虫写的移动书城

Notifications You must be signed in to change notification settings

7357657/vue-reader

 
 

Repository files navigation

基于vue+express+nodejs爬虫的移动书城 ssr版本

技术栈:vue + vue-router + vuex + webpack + axios + less + flex + express + nodejs + mysql + localStorage

预览地址

爬虫地址

自用sql文件下载,包含了本项目接口使用的数据,可直接导入mysql中,下载地址(百度网盘)下载地址(Google Drive)

使用说明

#克隆项目
git clone git@github.com:tgxhx/vue-reader.git

# 安装依赖
npm install

# 本地开发环境,同时会启动webpack-dev-server和express服务,访问http://localhost:8080
npm start

# 构建生产
npm run build

# 分析构建文件
npm run analyze

# 部署
sudo chmod +x docker-build.sh
./docker-build.sh

项目说明

2019-04-14更新

最近闲下来抽时间重构了一下这个项目的架构,将对应的node服务整合了进来,并且集成了docker构建及部署。

使用首先需要能连接到mysql,并先导入上面的sql文件,然后在server目录下创建config/index.js

module.exports = {
  mysql: {
    host: 'x.x.x.x',
    user: 'xxx',
    password: 'xxx',
    database: 'xxx',
    port: 3306,
  },
};

=============分隔线===============

该项目很早以前就开始写了,算是用vue写的第一个项目,所以代码还是有不少问题,但是应该很符合vue入门使用者的写法,比如直接修改state:this.$store.state.xx = xx。

最开始是用jQuery写了阅读器部分,后来为了学习,就尝试用vue重构,学习了整个vue技术栈。

后来想想阅读器写好了,没有书可不行,想想应该用爬虫爬点数据,于是各种查找node爬虫的资料,写了不少爬虫,本项目使用的爬虫地址在这:地址

数据有了,接下来该构建api了,谷歌了一下发现用express好像不错,于是又学习了express部分,构建了所需的api,地址在这

有的同学刚开始学习vue的时候可能有点茫然,不光是vue本身的用法、api、组件等等,查资料后发现还有vue-router、vuex等等需要学习。

本项目就是那个阶段写的第一个比较完善的vue项目,现在才拿出来是因为中间有不少事耽搁了,如果你想看代码,可能会发现不少地方跟自己写得很像,一共只有四个路由,够简单吧,但是用到的东西在其他复杂应用中也是必需的,仔细想想其实vue也就那么点东西,多写就容易了。

vue-router方面,常用的内容基本都用到了,比如 动态路由、编程式导航、命名路由、重定向、数据获取时的loading、懒加载等等。

vuex采用分离的写法,state、mutation、action分开写,方便维护。

另外本项目中还写了一些可直接迁移使用的组件、比如loading组件、左右弹出层的背景阴影组件。

功能

  • 首页推荐
  • 书籍详情
  • 相似推荐
  • 分类查看
  • 阅读器
  • 章节跳转
  • 更改字体
  • 更换主题
  • 夜间模式
  • 翻页浏览
  • 本地存储(存储每本书的阅读进度)
  • 书架(待考虑)

项目截图

About

vue技术栈+express+node爬虫写的移动书城

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Vue 78.0%
  • JavaScript 18.4%
  • CSS 1.4%
  • HTML 1.1%
  • Other 1.1%