用 Vue 全家桶二次开发 V2EX 社区

2017-05-16 10:37:59 +08:00
 bw2

一、开发背景

为了全面的熟悉 Vue+Vue-router+Vuex+axios 技术栈,结合 V2EX 的开放 API 开发了这个简洁版的 V2EX。 在线预览

API 来自官方以及djyde的整理。

项目地址:v2ex-vue

二、项目演示

分类页

文章页 & 用户页

懒加载

路由

首页默认显示最新的帖子

三、项目优势

四、项目缺陷


server {
    listen    80;
    listen    443;
    server_name localhost;
    ssl on;
    ssl_certificate /etc/nginx/ssl/nginx.crt;
    ssl_certificate_key /etc/nginx/ssl/nginx.key;
    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/;
    }
}

五、项目安装

项目兼容 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 来兼容 IE


npm install babel-polyfill --save-dev  // 安装 babel-polyfill

src/main.js
---------------
import 'babel-polyfill'  // 在 vue 主文件中导入

PS:正在找工作,北京有坑的欢迎联系

3959 次点击
所在节点    程序员
11 条回复
lovelypig5
2017-05-16 14:25:37 +08:00
首次加载 50s,做个压缩,提个公用,开个 gzip 啥的
bw2
2017-05-16 14:52:36 +08:00
@lovelypig5 线上运行的是开发代码,不是编译后的代码。部署的话涉及到跨域,那个 nginx 反向代理配置不知为啥没有生效。搞定了这个,就直接用 nginx 部署了。
bw2
2017-05-16 16:36:23 +08:00
nginx 已经配置好了,速度噌噌噌的往上升 https://47.93.252.247/#/
holy_sin
2017-05-16 18:48:53 +08:00
我上视频了,好棒
sensui7
2017-05-16 21:24:02 +08:00
不是 api 吗,还要跨域???
bw2
2017-05-17 07:10:23 +08:00
@sensui7 你可以在 localhost 下测试一下 V2EX 提供的 API,是不允许跨域的
bw2
2017-05-17 07:54:07 +08:00
@holy_sin 233333333
sivacohan
2017-05-17 08:50:47 +08:00
lee#chengantech.com

简历发一份吧
bw2
2017-05-17 15:19:16 +08:00
@sivacohan 能保持联系吗?这周还有一个 NodeJS 的项目要做,下周再把简历发给你。
sivacohan
2017-05-17 21:07:15 +08:00
@bw2

可以啊。用我的 ID 搜微信。
bw2
2017-05-18 10:22:32 +08:00
@sivacohan 好的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/361609

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX