摘要:一开发背景为了全面的熟悉技术栈,结合的开放开发了这个简洁版的。在线预览来自官方以及的整理。当页面刷新后也无法显示,请查看控制台的异步请求是否返回。
一、开发背景
为了全面的熟悉Vue+Vue-router+Vuex+axios技术栈,结合V2EX的开放API开发了这个简洁版的V2EX。 在线预览
API来自官方以及djyde的整理。
在线访问请节制使用,跨域是通过Nginx配置反向代理实现的,所以每小时120次API请求是算在服务器头上的(没啥说的了)。
当页面刷新后也无法显示,请查看控制台的异步请求是否返回403。如果是的话,要么你等等(很久),要么你clone这个库到本地去玩。
项目地址:v2ex-vue
二、项目演示分类页
文章页 & 用户页
懒加载
移动端
路由
首页默认显示最新的帖子
首页 /
全部 /topic
分类 /topic/:name
文章 /article/:id
用户 /user/:name
结构
目录是cmd生成的(稍微进行了一下修改,默认的太难看了) tree /f >tree.txt
├─components
│ Topic.vue // 某一分类下的文章或某个用户的全部文章
│ TopicList.vue // 全部分类
├─router
│ index.js // 路由
├─store
│ state.js // 存放API地址和最近一次请求的文章和评论
│ getters.js // 读取state的值
│ mutations.js // 存储懒加载
│ actions.js // 存储异步请求
│ index.js // Vuex
├─ App.vue // 主页面
├─ main.js // Vue主文件
界面设计简洁
沉浸式的阅读体验
可以按分类/文章/用户浏览
在文章页显示用户评论
图片使用懒加载模式
总之,实现了你看帖所需要的一切
项目基于Vue全家桶
适配移动端
有完善的文档注释
有疑问欢迎提交issue
感兴趣的欢迎给颗star ^_^
...
四、项目缺陷不支持翻页(没有找到翻页的API)
...
五、项目安装项目兼容IE9+,使用项目前,请确保安装好了NodeJS。
git clone https://github.com/bergwhite/v2ex-vue.git // 克隆项目 cd v2ex-vue // 进入项目目录 npm install // 安装依赖 npm run dev // 运行项目六、解决方案 6.1 本地开发跨域方案
本地开发中,通过配置代理表实现跨域。
config/index.js ------------------- proxyTable: { "/api": { target: "https://www.v2ex.com", changeOrigin: true, pathRewrite: { "^/api": "/api" } } }6.2 让Vuex支持IE
直接引入Vuex无法在IE中显示,需要引入babel-polyfill。
npm install babel-polyfill --save-dev // 安装babel-polyfill src/main.js --------------- import "babel-polyfill" // 在vue主文件中导入6.3 在线部署跨域方案
通过配置Nginx反向代理实现跨域。由于是代理HTTPS,所以你需要生成SSL证书。
/etc/nginx/nginx.conf ------------------------------ http { server { listen 80; listen 443; server_name www.v2ex.com; ssl on; ssl_certificate /etc/nginx/ssl/nginx.crt; ssl_certificate_key /etc/nginx/ssl/nginx.key; location / { root /usr/share/nginx/html; index index.html; } location /api/ { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass https://www.v2ex.com/api/; } } }
PS:正在找工作,北京有坑的欢迎联系
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/83032.html
摘要:技术栈项目背景这个项目主要是为了玩玩,项目的方向大概是做出类似的在线聊天系统。项目使用进行部署和管理,功能在不断的迭代开发中。首页用户列表用户中心注册登陆注销用户资料指定聊天室开始安装使用之前,请在中修改的安装路径。 技术栈:NodeJS & SocketIO & Express & EJS & MongoDB & Gulp 项目背景 这个项目主要是为了玩玩NodeJS,项目的方向大概...
摘要:技术栈项目背景这个项目主要是为了玩玩,项目的方向大概是做出类似的在线聊天系统。项目使用进行部署和管理,功能在不断的迭代开发中。首页用户列表用户中心注册登陆注销用户资料指定聊天室开始安装使用之前,请在中修改的安装路径。 技术栈:NodeJS & SocketIO & Express & EJS & MongoDB & Gulp 项目背景 这个项目主要是为了玩玩NodeJS,项目的方向大概...
摘要:按照如下配置可通过解决跨域问题。但是这个不行,已亲测豆瓣可以实现跨域,不知道是不是提供的是情况。本地开发解决跨域终极方法仅仅适用于开发环境安装谷歌插件即可地址 v2ex A vue.js project for V2EX 预览图 首页 showImg(https://segmentfault.com/img/remote/1460000008631284); 主题 showImg(ht...
摘要:目录项目简介在线演示截图演示踩坑项目简介项目使用进行开发项目兼容移动端使用代理并支持跨域另外还写过一个版项目,以及聊天室,找工作,北京。 目录 项目简介 在线演示 截图演示 踩坑 项目简介(1/4) 项目使用React、Reac-router、Axios、ANTD UI进行开发 项目兼容移动端 使用Nginx代理V2EX API并支持CORS跨域 另外还写过一个Vue版V2EX项...
阅读 1560·2021-11-24 09:39
阅读 1041·2021-11-22 15:11
阅读 2166·2021-11-19 11:35
阅读 1626·2021-09-13 10:37
阅读 2452·2021-09-03 10:47
阅读 2133·2021-08-30 09:47
阅读 1625·2021-08-20 09:39
阅读 2900·2019-08-30 14:13