这是用 vue.js 2.0 高仿 今日头条 的移动端项目,结合了原生app的部分功能以及网页版。
前言
本人是 今日头条 的重度用户,在学习vue.js过程中,在GitHub上看到了很多高仿webapp的好项目。由此在有了一定的技术积累后,开始构思使用Vue写今日头条,一是自己对于头条的喜爱,另外也是对于自己学习成果的检验。
技术栈
- vue.js 2.0全家桶(vue、vuex、vue-router)
- axios、jsonp
- element-ui、iview
- vue-lazyload、animate.css、moment、flexible.js
在线地址
线上地址(预览地址)
GitHub地址
git clone https://github.com/hcy1996/vue-toutiao.git
npm install
npm run dev
首先,重要的逻辑和操作都是在 home页(首页) 。
这个项目很关键的一环便是数据的获取,而且现在网上很少有现成的新闻数据接口,当然也有,但是返回的数据无法满足我们的需求。
后来我在刷新今日头条(f12移动模式)时,在控制台network中捕捉到了数据接口,现在直接分享给大家。
http://m.toutiao.com/list/?tag=' payload.kind '
&ac=wap&count=20&format=json_raw&as=A125A8CEDCF8987&cp=58EC18F948F79E1&
min_behot_time= parseInt((new Date().getTime()) / 1000)
这个接口其实很简单,主要修改tag和min_behot_time这两个字段。
说一说这 tag
tag中news_×××的 ××× 内容需要几分钟去复制一下,
比如“热点”:news_hot; “军事”:news_military。。。等等
另外这个请求是有跨域问题的,可用代理(设置proxyTable)和jsonp实现。
其实大家仔细看都能发现,我这里就献丑了,希望对您以后做一些新闻相关的项目有帮助。
4-23 更新