用 Vue 全家桶二次开发 V2EX 社区 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
请不要在回答技术问题时复制粘贴 AI 生成的内容
bw2

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

  •  1
     
  •   bw2
    bergwhite May 16, 2017 4772 views
    This topic created in 3268 days ago, the information mentioned may be changed or developed.

    一、开发背景

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

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

    项目地址:v2ex-vue

    二、项目演示

    分类页

    topic

    文章页 & 用户页

    article & user

    懒加载

    lazyLoad

    路由

    首页默认显示最新的帖子

    • 首页 /
    • 全部 /topic
    • 分类 /topic/:name
    • 文章 /article/:id
    • 用户 /user/:name

    三、项目优势

    • 界面设计简洁
    • 沉浸式的阅读体验
    • 可以按分类 /文章 /用户浏览
    • 在文章页显示用户评论
    • 图片使用懒加载模式
    • 总之,实现了你看帖所需要的一切
    • 项目基于 Vue 全家桶
    • 适配移动端
    • 有完善的文档注释
    • 有疑问欢迎提交 issue
    • 感兴趣的欢迎给颗 star ^_^
    • ...

    四、项目缺陷

    • 不支持翻页(没有找到翻页的 API )
    • 在线演示首次加载较慢(为了能跨域显示最新内容,直接用 npm run dev 部署的)
    • 打算使用 nginx 部署,但是在代理的时候遇到了问题( https 部署成功,反向代理失败)
    • 配置文件在下面,希望大家帮忙看看问题在哪
    • ...
     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 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:正在找工作,北京有坑的欢迎联系

    11 replies    2017-05-18 10:22:32 +08:00
    lovelypig5
        1
    lovelypig5  
       May 16, 2017
    首次加载 50s,做个压缩,提个公用,开个 gzip 啥的
    bw2
        2
    bw2  
    OP
       May 16, 2017
    @lovelypig5 线上运行的是开发代码,不是编译后的代码。部署的话涉及到跨域,那个 nginx 反向代理配置不知为啥没有生效。搞定了这个,就直接用 nginx 部署了。
    bw2
        3
    bw2  
    OP
       May 16, 2017
    nginx 已经配置好了,速度噌噌噌的往上升 https://47.93.252.247/#/
    holy_sin
        4
    holy_sin  
       May 16, 2017
    我上视频了,好棒
    sensui7
        5
    sensui7  
       May 16, 2017
    不是 api 吗,还要跨域???
    bw2
        6
    bw2  
    OP
       May 17, 2017
    @sensui7 你可以在 localhost 下测试一下 V2EX 提供的 API,是不允许跨域的
    bw2
        7
    bw2  
    OP
       May 17, 2017
    @holy_sin 233333333
    sivacohan
        8
    sivacohan  
    PRO
       May 17, 2017 via Android
    lee#chengantech.com

    简历发一份吧
    bw2
        9
    bw2  
    OP
       May 17, 2017
    @sivacohan 能保持联系吗?这周还有一个 NodeJS 的项目要做,下周再把简历发给你。
    sivacohan
        10
    sivacohan  
    PRO
       May 17, 2017 via Android
    @bw2

    可以啊。用我的 ID 搜微信。
    bw2
        11
    bw2  
    OP
       May 18, 2017
    @sivacohan 好的
    About     Help     Advertise     Blog     API     FAQ     Solana     4849 Online   Highest 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 84ms UTC 10:03 PVG 18:03 LAX 03:03 JFK 06:03
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86