vue低仿知乎日报

概述

一个基于vue的仿知乎日报的前端项目。

关于知乎日报:

知乎日报是一款拥有千万用户的资讯类客户端,每日提供来自知乎社区的精选问答,还有国内一流媒体的专栏特稿。

主要功能

每天更新好文章,包括权威的时事解读、有趣的生活建议
  更符合用户口味的「主题日报」,覆盖电影、财经、设计、体育等领域
  长评优先展示
  离线下载功能,及时缓存近期的 30 篇文章
  更多贴心小细节:多图及长文预警;支持一键分享收藏;夜间模式

安装

# install dependencies
npm install

# serve with hot reload at localhost:8080
npm run dev

# build for production with minification
npm run build

技术栈

vue

vuex

vue-router

axios

mint-ui

在线演示

demo

github地址

个人博客地址

细节

API:

感谢Xiao Liang提供的API,所有 API 均由 知乎(Zhihu.Inc)提供。

跨域问题

由于浏览器的同源策略,不允许进行跨域请求,所以首先解决的就是跨域问题,以前采用的是开发时配置/config/index.js下的proxyTable选项,实际部署时采用nodejs转发,这次为了方便,采用了第三方APIJsonBird进行转发,可以避免跨域的问题,返回的是json对象。

轮播:

知乎日报在首页有5个top_stories,采用的是轮播方式展现出来的,为了实现轮播,采用的mint-uiswipe组件,不过在使用的时候折磨了很久,最后发现原因是该组件没有设置默认的高度,需要手动设置,如果不设置,就什么都显示不出来。。。(尴尬。。。)

刷新

采用的同样是mint-ui下的组件,规定聚页面底部的距离阈值,小于阈值就触发自定义事件。

路由

vue-router的配置文件

import Vue from 'vue'
import Router from 'vue-router'
import showContent from '@/components/showContent'
import detail from '@/components/detail'
import message from '@/components/message'

Vue.use(Router)

export default new Router({
  routes: [
    {
      path: '/show',         //显示新闻列表
      name: 'showContent',
      component: showContent
    },
    {
        path: '/detail',   //显示详细信息
        name: 'detail',
        component: detail
    },
    {
      path: '/message',   //消息页面
      name: 'message',
      component: message
    }
  ]
})

状态管理

import Vue from 'vue'
import Vuex from 'vuex'
Vue.use(Vuex)
const store = new Vuex.Store({
    state:{
        id: 9377231,      //文章id
        response: '',    
        top_stories: [],  //标题文章
        stories: '',     //普通文章
        date: 20170425  //日期
    },

    mutations: {
    },
    actions: {

    },

})
export default store

防盗链

知乎在图片做了防盗链处理,只需要在header中加入

<meta name="referrer" content="never">

即可解决

运行截图

index.png
detail.png
message.png

文件结构

.
├── build
├── config
│   ├── dev.env.js
│   ├── index.js
│   └── prod.env.js
├── dist
│   ├── index.html
│   └── static
│       ├── css
│       ├── img
│       └── js
├── index.html
├── node_modules
├── package.json
├── README.md
├── src
│   ├── App.vue
│   ├── assets
│   ├── components            //组件文件夹
│   │   ├── detailHeader.vue      //详细信息的头部组件
│   │   ├── detail.vue            //详细信息组件
│   │   ├── indexHeader.vue       //首页组件头部
│   │   ├── messageHeader.vue     //消息页面的头部组件
│   │   ├── message.vue           //消息页面组件
│   │   └── showContent.vue       //首页显示组件
│   ├── main.js
│   ├── router
│   │   └── index.js    //vue-router的配置文件
│   └── store
│       └── index.js    //vuex的配置文件

13 directories, 41 files

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 160,999评论 4 368
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 68,102评论 1 302
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 110,709评论 0 250
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,439评论 0 217
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,846评论 3 294
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,881评论 1 224
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 32,062评论 2 317
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,783评论 0 205
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,517评论 1 248
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,762评论 2 253
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,241评论 1 264
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,568评论 3 260
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,236评论 3 241
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,145评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,941评论 0 201
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,965评论 2 283
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,802评论 2 275

推荐阅读更多精彩内容