├── static
├── .gitkeep
├── reset.css
└── iconfont.css
├── config
├── prod.env.js
├── dev.env.js
└── index.js
├── src
├── components
│ ├── sidebar
│ │ ├── tx.png
│ │ └── sidebar.vue
│ ├── navtop
│ │ └── navtop.vue
│ ├── operation
│ │ └── operation.vue
│ ├── newsday
│ │ └── newsday.vue
│ ├── index
│ │ └── index.vue
│ ├── column
│ │ └── column.vue
│ ├── TextTheme
│ │ └── TextTheme.vue
│ └── commentaries
│ │ └── commentaries.vue
├── router
│ └── index.js
├── main.js
├── App.vue
└── assets
│ └── iconfont.js
├── .babelrc
├── .editorconfig
├── .gitignore
├── .postcssrc.js
├── index.html
├── README.md
└── package.json
/static/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/config/prod.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | module.exports = {
3 | NODE_ENV: '"production"'
4 | }
5 |
--------------------------------------------------------------------------------
/src/components/sidebar/tx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/kongziyi123/zhihuribao/HEAD/src/components/sidebar/tx.png
--------------------------------------------------------------------------------
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | ["env", {
4 | "modules": false
5 | }],
6 | "stage-2"
7 | ],
8 | "plugins": ["transform-runtime"]
9 | }
10 |
--------------------------------------------------------------------------------
/config/dev.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const merge = require('webpack-merge')
3 | const prodEnv = require('./prod.env')
4 |
5 | module.exports = merge(prodEnv, {
6 | NODE_ENV: '"development"'
7 | })
8 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = space
6 | indent_size = 2
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | /dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 |
8 | # Editor directories and files
9 | .idea
10 | .vscode
11 | *.suo
12 | *.ntvs*
13 | *.njsproj
14 | *.sln
15 |
--------------------------------------------------------------------------------
/.postcssrc.js:
--------------------------------------------------------------------------------
1 | // https://github.com/michael-ciniawsky/postcss-load-config
2 |
3 | module.exports = {
4 | "plugins": {
5 | // to edit target browsers: use "browserslist" field in package.json
6 | "postcss-import": {},
7 | "autoprefixer": {}
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | zhihuribao
9 |
10 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # zhihuribao
2 |
3 | > A Vue.js project
4 |
5 | ## Build Setup
6 |
7 | ``` bash
8 | # install dependencies
9 | npm install
10 |
11 | # serve with hot reload at localhost:8080
12 | npm run dev
13 |
14 | # build for production with minification
15 | npm run build
16 |
17 | # build for production and view the bundle analyzer report
18 | npm run build --report
19 | ```
20 |
21 | For a detailed explanation on how things work, check out the [guide](http://vuejs-templates.github.io/webpack/) and [docs for vue-loader](http://vuejs.github.io/vue-loader).
22 |
--------------------------------------------------------------------------------
/src/router/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Router from 'vue-router'
3 | import TextTheme from '@/components/TextTheme/TextTheme'
4 | import index from '@/components/index/index'
5 | import column from '@/components/column/column'
6 | Vue.use(Router);
7 | var bus=new Vue();
8 | export default new Router({
9 | routes: [
10 | {
11 | path:'/articles/:id',
12 | name:'articles',
13 | component:TextTheme
14 | },
15 | {
16 | path: '/index',
17 | name: 'index',
18 | component: index
19 | },
20 | {
21 | path:'/items/:number',
22 | name:'items',
23 | component:column
24 | },
25 | {
26 | path:'/',
27 | name:'default',
28 | component:index
29 | }
30 |
31 | ]
32 | })
33 |
--------------------------------------------------------------------------------
/static/reset.css:
--------------------------------------------------------------------------------
1 | body,h1,h2,h3,h4,h5,h6,hr,p,blockquote,dl,dt,dd,ul,ol,li,pre,figcaption,figure,fieldset,legend,button,input,textarea,th,td{margin:0;padding:0}
2 | body,button,input,select,textarea{font:12px/1 Lucida Grande,'Microsoft YaHei',"Lucida Grande","Lucida Sans Unicode",Helvetica,Arial,Verdana,sans-serif}
3 | h1{font-size:18px;font-weight:normal}
4 | h2{font-size:16px;font-weight:normal}
5 | h3{font-size:14px;font-weight:normal}
6 | h4,h5,h6{font-size:100%;font-weight:normal}
7 | address,cite,dfn,em,var{font-style:normal}
8 | code,kbd,pre,samp,tt{font-family:"Courier New",Courier,monospace}
9 | small{font-size:12px}
10 | ul,ol,li{list-style:none}
11 | a{text-decoration:none}
12 | abbr[title],acronym[title]{border-bottom:1px dotted;cursor:help}
13 | q:before,q:after{content:''}
14 | legend{color:#000}
15 | fieldset,img{border:0}
16 | table{border-collapse:collapse;border-spacing:0}
17 | hr{border:0;height:1px}
18 | *{-ms-word-break:break-all;word-break:break-all;-ms-word-wrap:break-word;word-wrap:break-word;-webkit-tap-highlight-color:rgba(0,0,0,0)}
19 | .clearfix:after {
20 | content: " ";
21 | display: block;
22 | clear: both;
23 | height: 0;
24 | }
25 | .clearfix {
26 | zoom: 1;
27 | }
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | // The Vue build version to load with the `import` command
2 | // (runtime-only or standalone) has been set in webpack.base.conf with an alias.
3 | import Vue from 'vue'
4 | import App from './App'
5 | import router from './router'
6 | // import Mint from 'mint-ui'
7 | import {Swipe,SwipeItem,Popup} from 'mint-ui'
8 | import 'mint-ui/lib/style.css'
9 | import axios from 'axios'
10 | import VueLazyload from 'vue-lazyload'
11 |
12 | // Vue.use(VueLazyload)
13 | Vue.use(VueLazyload, {
14 | preLoad: 1.3,
15 | attempt: 1
16 | })
17 |
18 | Vue.component(Swipe.name,Swipe);
19 | Vue.component(SwipeItem.name,SwipeItem);
20 | Vue.component(Popup.name,Popup);
21 |
22 |
23 | Vue.prototype.$http=axios;
24 | axios.defaults.baseURL = '/api'
25 |
26 | Vue.config.productionTip = false
27 | document.documentElement.style.fontSize=document.documentElement.clientWidth>750?750/10.8+"px":document.documentElement.clientWidth/10.8+"px";
28 | /* eslint-disable no-new */
29 |
30 | Vue.prototype.$setgoindex = function () {
31 | if (window.history.length <= 1) {
32 | if (location.href.indexOf('?') === -1) {
33 | window.location.href = location.href + '?goindex=true'
34 | } else if (location.href.indexOf('?') !== -1 && location.href.indexOf('goindex') === -1) {
35 | window.location.href = location.href + '&goindex=true'
36 | }
37 | }
38 | }
39 |
40 | new Vue({
41 | el: '#app',
42 | router,
43 | template: '',
44 | components: { App }
45 | })
46 |
--------------------------------------------------------------------------------
/src/components/navtop/navtop.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
19 |
20 |
21 |
22 |
45 |
46 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "zhihuribao",
3 | "version": "1.0.0",
4 | "description": "A Vue.js project",
5 | "author": "kongziyi ",
6 | "private": true,
7 | "scripts": {
8 | "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
9 | "start": "npm run dev",
10 | "build": "node build/build.js"
11 | },
12 | "dependencies": {
13 | "axios": "^0.17.1",
14 | "jsonp": "^0.2.1",
15 | "mint-ui": "^2.2.12",
16 | "vue": "^2.5.2",
17 | "vue-router": "^3.0.1",
18 | "better-scroll":"^1.4.0",
19 | "vue-lazyload":"^1.1.4"
20 | },
21 | "devDependencies": {
22 | "autoprefixer": "^7.1.2",
23 | "babel-core": "^6.22.1",
24 | "babel-loader": "^7.1.1",
25 | "babel-plugin-transform-runtime": "^6.22.0",
26 | "babel-preset-env": "^1.3.2",
27 | "babel-preset-stage-2": "^6.22.0",
28 | "chalk": "^2.0.1",
29 | "copy-webpack-plugin": "^4.0.1",
30 | "css-loader": "^0.28.0",
31 | "eventsource-polyfill": "^0.9.6",
32 | "extract-text-webpack-plugin": "^3.0.0",
33 | "file-loader": "^1.1.4",
34 | "friendly-errors-webpack-plugin": "^1.6.1",
35 | "html-webpack-plugin": "^2.30.1",
36 | "node-notifier": "^5.1.2",
37 | "optimize-css-assets-webpack-plugin": "^3.2.0",
38 | "ora": "^1.2.0",
39 | "portfinder": "^1.0.13",
40 | "postcss-import": "^11.0.0",
41 | "postcss-loader": "^2.0.8",
42 | "rimraf": "^2.6.0",
43 | "semver": "^5.3.0",
44 | "shelljs": "^0.7.6",
45 | "uglifyjs-webpack-plugin": "^1.1.1",
46 | "url-loader": "^0.5.8",
47 | "vue-loader": "^13.3.0",
48 | "vue-style-loader": "^3.0.1",
49 | "vue-template-compiler": "^2.5.2",
50 | "webpack": "^3.6.0",
51 | "webpack-bundle-analyzer": "^2.9.0",
52 | "webpack-dev-server": "^2.9.1",
53 | "webpack-merge": "^4.1.0",
54 | "less":"^2.7.2",
55 | "less-loader":"^4.0.4"
56 | },
57 | "engines": {
58 | "node": ">= 4.0.0",
59 | "npm": ">= 3.0.0"
60 | },
61 | "browserslist": [
62 | "> 1%",
63 | "last 2 versions",
64 | "not ie <= 8"
65 | ]
66 | }
67 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
64 |
83 |
--------------------------------------------------------------------------------
/src/components/operation/operation.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | - {{likeof}}
7 | - 举报
8 | - 复制
9 | - 回复
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
78 |
79 |
80 |
--------------------------------------------------------------------------------
/config/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | // Template version: 1.2.5
3 | // see http://vuejs-templates.github.io/webpack for documentation.
4 |
5 | const path = require('path')
6 |
7 | module.exports = {
8 | dev: {
9 | // Paths
10 | assetsSubDirectory: 'static',
11 | assetsPublicPath: '/',
12 | proxyTable: {
13 | '/api':{
14 | target:'https://news-at.zhihu.com/api',
15 | changeOrigin:true,
16 | pathRewrite:{
17 | '^/api':""
18 | }
19 | }
20 | },
21 |
22 | // Various Dev Server settings
23 | host: '0.0.0.0', // can be overwritten by process.env.HOST
24 | port: 8080, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
25 | autoOpenBrowser: false,
26 | errorOverlay: true,
27 | notifyOnErrors: true,
28 | poll: false, // https://webpack.js.org/configuration/dev-server/#devserver-watchoptions-
29 |
30 | // Use Eslint Loader?
31 | // If true, your code will be linted during bundling and
32 | // linting errors and warnings will be shown in the console.
33 | useEslint: true,
34 | // If true, eslint errors and warnings will also be shown in the error overlay
35 | // in the browser.
36 | showEslintErrorsInOverlay: false,
37 |
38 | /**
39 | * Source Maps
40 | */
41 |
42 | // https://webpack.js.org/configuration/devtool/#development
43 | devtool: 'eval-source-map',
44 |
45 | // If you have problems debugging vue-files in devtools,
46 | // set this to false - it *may* help
47 | // https://vue-loader.vuejs.org/en/options.html#cachebusting
48 | cacheBusting: true,
49 |
50 | // CSS Sourcemaps off by default because relative paths are "buggy"
51 | // with this option, according to the CSS-Loader README
52 | // (https://github.com/webpack/css-loader#sourcemaps)
53 | // In our experience, they generally work as expected,
54 | // just be aware of this issue when enabling this option.
55 | cssSourceMap: false,
56 | },
57 |
58 | build: {
59 | // Template for index.html
60 | index: path.resolve(__dirname, '../dist/index.html'),
61 |
62 | // Paths
63 | assetsRoot: path.resolve(__dirname, '../dist'),
64 | assetsSubDirectory: 'static',
65 | assetsPublicPath: '/',
66 |
67 | /**
68 | * Source Maps
69 | */
70 |
71 | productionSourceMap: true,
72 | // https://webpack.js.org/configuration/devtool/#production
73 | devtool: '#source-map',
74 |
75 | // Gzip off by default as many popular static hosts such as
76 | // Surge or Netlify already gzip all static assets for you.
77 | // Before setting to `true`, make sure to:
78 | // npm install --save-dev compression-webpack-plugin
79 | productionGzip: false,
80 | productionGzipExtensions: ['js', 'css'],
81 |
82 | // Run the build command with an extra argument to
83 | // View the bundle analyzer report after build finishes:
84 | // `npm run build --report`
85 | // Set to `true` or `false` to always turn it on or off
86 | bundleAnalyzerReport: process.env.npm_config_report
87 | }
88 | }
89 |
--------------------------------------------------------------------------------
/src/components/newsday/newsday.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
{{atories.date|time}}
6 |
7 | -
8 |
9 |
10 | {{item.title}}
11 |
12 |
13 |
![]()
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
98 |
99 |
100 |
--------------------------------------------------------------------------------
/static/iconfont.css:
--------------------------------------------------------------------------------
1 |
2 | @font-face {font-family: "iconfont";
3 | src: url('iconfont.eot?t=1513247045917'); /* IE9*/
4 | src: url('iconfont.eot?t=1513247045917#iefix') format('embedded-opentype'), /* IE6-IE8 */
5 | url('data:application/x-font-woff;charset=utf-8;base64,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') format('woff'),
6 | url('iconfont.ttf?t=1513247045917') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+*/
7 | url('iconfont.svg?t=1513247045917#iconfont') format('svg'); /* iOS 4.1- */
8 | }
9 |
10 | .iconfont {
11 | font-family:"iconfont" !important;
12 | font-size:16px;
13 | font-style:normal;
14 | -webkit-font-smoothing: antialiased;
15 | -moz-osx-font-smoothing: grayscale;
16 | }
17 |
18 | .icon-xiangyou:before { content: "\e692"; }
19 |
20 | .icon-jia:before { content: "\e67d"; }
21 |
22 | .icon-xingzhuang60kaobei2:before { content: "\e603"; }
23 |
24 | .icon-icon:before { content: "\e60e"; }
25 |
26 | .icon-weibiaoti1:before { content: "\e613"; }
27 |
28 | .icon-fenxiang:before { content: "\e635"; }
29 |
30 | .icon-jianhaojiacu:before { content: "\e62f"; }
31 |
32 | .icon-pinglun:before { content: "\e6a7"; }
33 |
34 | .icon-lingdang:before { content: "\e652"; }
35 |
36 | .icon-download:before { content: "\e732"; }
37 |
38 | .icon-zan:before { content: "\e90e"; }
39 |
40 | .icon-daohang:before { content: "\e615"; }
41 |
42 | .icon-iconjia:before { content: "\e50b"; }
43 |
44 | .icon-jiajianzujianjiahao:before { content: "\e64d"; }
45 |
46 |
--------------------------------------------------------------------------------
/src/components/index/index.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 | {{imgitem.title}}
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
154 |
155 |
--------------------------------------------------------------------------------
/src/components/column/column.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
8 |
9 |
10 | {{model.name}}
11 |
12 |
13 |
16 |
17 |
18 |
19 |
20 |
![]()
21 |
22 |
{{model.description}}
23 |
24 |
25 |
35 |
36 |
37 |
38 | {{item.title}}
39 |
40 |
![]()
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
94 |
95 |
96 |
--------------------------------------------------------------------------------
/src/components/sidebar/sidebar.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |

9 |
10 |
请登录
11 |
12 |
13 |
14 |
17 | 我的收藏
18 |
19 |
20 |
23 | 离线下载
24 |
25 |
26 |
27 |
28 |
29 | -
30 |
31 |
34 | 首页
35 |
36 |
37 | -
38 |
39 | {{item.name}}
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
125 |
126 |
127 |
--------------------------------------------------------------------------------
/src/components/TextTheme/TextTheme.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
45 |
46 |
47 |
![]()
48 |
{{source.title}}
49 |
{{source.image_source}}
50 |
51 |
52 |
53 |
54 |
55 |
56 |
187 |
188 |
189 |
321 |
322 |
--------------------------------------------------------------------------------
/src/components/commentaries/commentaries.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
20 |
21 |
22 |
23 | {{Lcomments.length}}条长评
24 |
25 |
26 |
27 |
![]()
28 |
29 |
30 |
31 |
{{item.author}}
32 |
33 |
36 | {{item.likes}}
37 |
38 |
39 |
40 | {{item.content}}
41 |
42 |
43 | {{item.time|times}}
44 |
45 |
46 |
47 |
48 | {{short}} 条短评
49 |
53 |
54 |
56 |
57 |
![]()
58 |
59 |
60 |
61 |
{{item.author}}
62 |
63 |
66 | {{item.likes}}
67 |
68 |
69 |
70 | {{item.content}}
71 |
72 |
73 | {{item.time|times}}
74 |
75 |
76 |
77 |
78 |
79 |
80 |
86 |
87 |
88 |
89 |
90 |
91 |
232 |
233 |
234 |
--------------------------------------------------------------------------------
/src/assets/iconfont.js:
--------------------------------------------------------------------------------
1 | (function(window){var svgSprite='';var script=function(){var scripts=document.getElementsByTagName("script");return scripts[scripts.length-1]}();var shouldInjectCss=script.getAttribute("data-injectcss");var ready=function(fn){if(document.addEventListener){if(~["complete","loaded","interactive"].indexOf(document.readyState)){setTimeout(fn,0)}else{var loadFn=function(){document.removeEventListener("DOMContentLoaded",loadFn,false);fn()};document.addEventListener("DOMContentLoaded",loadFn,false)}}else if(document.attachEvent){IEContentLoaded(window,fn)}function IEContentLoaded(w,fn){var d=w.document,done=false,init=function(){if(!done){done=true;fn()}};var polling=function(){try{d.documentElement.doScroll("left")}catch(e){setTimeout(polling,50);return}init()};polling();d.onreadystatechange=function(){if(d.readyState=="complete"){d.onreadystatechange=null;init()}}}};var before=function(el,target){target.parentNode.insertBefore(el,target)};var prepend=function(el,target){if(target.firstChild){before(el,target.firstChild)}else{target.appendChild(el)}};function appendSvg(){var div,svg;div=document.createElement("div");div.innerHTML=svgSprite;svgSprite=null;svg=div.getElementsByTagName("svg")[0];if(svg){svg.setAttribute("aria-hidden","true");svg.style.position="absolute";svg.style.width=0;svg.style.height=0;svg.style.overflow="hidden";prepend(svg,document.body)}}if(shouldInjectCss&&!window.__iconfont__svg__cssinject__){window.__iconfont__svg__cssinject__=true;try{document.write("")}catch(e){console&&console.log(e)}}ready(appendSvg)})(window)
--------------------------------------------------------------------------------