')
85 | html = html.replace(/
![]()
{
23 | unique[p] = 1
24 | })
25 |
26 | function readFiles (dir, onFileContent, onError) {
27 | let length = _getAllFilesFromFolder(dir).filter(p => extensionsReg.test(p)).length
28 | let counted = 0
29 | _getAllFilesFromFolder(dir).forEach(function (filename) {
30 | if (!extensionsReg.test(filename)) {
31 | return
32 | }
33 | fs.readFile(filename, { encoding: 'utf8' }, function (err, data) {
34 | if (err) {
35 | console.error(err)
36 | }
37 | var match = data.match(/[\u4e00-\u9fa5]/g)
38 | if (match) {
39 | match.forEach(function (mat) {
40 | unique[mat] = 1
41 | })
42 | }
43 | counted++
44 | if (counted === length) {
45 | console.log(Object.keys(unique).join(''))
46 | }
47 | })
48 | })
49 | }
50 |
51 | readFiles(path.resolve(__dirname, ''), () => {}, err => console.log(err))
52 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
24 |
25 |
28 |
--------------------------------------------------------------------------------
/src/app.json:
--------------------------------------------------------------------------------
1 | {
2 | "pages": [
3 | "pages/citylist/main",
4 | "pages/citydetail/main",
5 | "pages/citymap/main",
6 | "pages/cityroutine/main",
7 | "pages/userguide/main",
8 | "pages/morefeature/main"
9 | ],
10 | "permission": {
11 | "scope.userLocation": {
12 | "desc": "你的位置信息将用于小程序位置接口的效果展示"
13 | }
14 | },
15 | "window": {
16 | "backgroundTextStyle": "light",
17 | "navigationBarBackgroundColor": "#eee",
18 | "navigationBarTitleText": "",
19 | "navigationBarTextStyle": "black"
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/src/assets/images/gotop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/gotop.png
--------------------------------------------------------------------------------
/src/assets/images/heart-active.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/heart-active.png
--------------------------------------------------------------------------------
/src/assets/images/heart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/heart.png
--------------------------------------------------------------------------------
/src/assets/images/icon_computer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/icon_computer.png
--------------------------------------------------------------------------------
/src/assets/images/icon_copy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/icon_copy.png
--------------------------------------------------------------------------------
/src/assets/images/icon_email.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/icon_email.png
--------------------------------------------------------------------------------
/src/assets/images/icon_exchange.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/icon_exchange.png
--------------------------------------------------------------------------------
/src/assets/images/icon_file.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/icon_file.png
--------------------------------------------------------------------------------
/src/assets/images/icon_link.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/icon_link.png
--------------------------------------------------------------------------------
/src/assets/images/icon_movie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/icon_movie.png
--------------------------------------------------------------------------------
/src/assets/images/icon_travel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/icon_travel.png
--------------------------------------------------------------------------------
/src/assets/images/location.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/location.png
--------------------------------------------------------------------------------
/src/assets/images/logo/bangkok.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/bangkok.png
--------------------------------------------------------------------------------
/src/assets/images/logo/beijing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/beijing.png
--------------------------------------------------------------------------------
/src/assets/images/logo/canton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/canton.png
--------------------------------------------------------------------------------
/src/assets/images/logo/changchun.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/changchun.png
--------------------------------------------------------------------------------
/src/assets/images/logo/changsha.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/changsha.png
--------------------------------------------------------------------------------
/src/assets/images/logo/changzhou.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/changzhou.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/chengdu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/chengdu.png
--------------------------------------------------------------------------------
/src/assets/images/logo/chongqing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/chongqing.png
--------------------------------------------------------------------------------
/src/assets/images/logo/dalian.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/dalian.png
--------------------------------------------------------------------------------
/src/assets/images/logo/dongguan.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/dongguan.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/dubai.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/dubai.png
--------------------------------------------------------------------------------
/src/assets/images/logo/foshan.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/foshan.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/fuzhou.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/fuzhou.png
--------------------------------------------------------------------------------
/src/assets/images/logo/guiyang.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/guiyang.png
--------------------------------------------------------------------------------
/src/assets/images/logo/hangzhou.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/hangzhou.png
--------------------------------------------------------------------------------
/src/assets/images/logo/harbin.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/harbin.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/harbin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/harbin.png
--------------------------------------------------------------------------------
/src/assets/images/logo/hefei.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/hefei.png
--------------------------------------------------------------------------------
/src/assets/images/logo/hohhot.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/hohhot.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/hongkong.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/hongkong.png
--------------------------------------------------------------------------------
/src/assets/images/logo/istanbul.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/istanbul.png
--------------------------------------------------------------------------------
/src/assets/images/logo/jinan.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/jinan.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/kaohsiung.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/kaohsiung.png
--------------------------------------------------------------------------------
/src/assets/images/logo/kuala-lumpur.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/kuala-lumpur.png
--------------------------------------------------------------------------------
/src/assets/images/logo/kunming.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/kunming.png
--------------------------------------------------------------------------------
/src/assets/images/logo/lanzhou.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/lanzhou.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/london.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/london.png
--------------------------------------------------------------------------------
/src/assets/images/logo/moscow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/moscow.png
--------------------------------------------------------------------------------
/src/assets/images/logo/nanchang.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/nanchang.png
--------------------------------------------------------------------------------
/src/assets/images/logo/nanjing.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/nanjing.png
--------------------------------------------------------------------------------
/src/assets/images/logo/nanning.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/nanning.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/nanning.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/nanning.png
--------------------------------------------------------------------------------
/src/assets/images/logo/newyork.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/newyork.png
--------------------------------------------------------------------------------
/src/assets/images/logo/ningbo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/ningbo.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/osaka.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/osaka.png
--------------------------------------------------------------------------------
/src/assets/images/logo/paris.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/paris.png
--------------------------------------------------------------------------------
/src/assets/images/logo/qingdao.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/qingdao.png
--------------------------------------------------------------------------------
/src/assets/images/logo/seoul.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/seoul.png
--------------------------------------------------------------------------------
/src/assets/images/logo/shanghai.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/shanghai.png
--------------------------------------------------------------------------------
/src/assets/images/logo/shenyang.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/shenyang.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/shenyang.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/shenyang.png
--------------------------------------------------------------------------------
/src/assets/images/logo/shenzhen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/shenzhen.png
--------------------------------------------------------------------------------
/src/assets/images/logo/shijiazhuang.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/shijiazhuang.png
--------------------------------------------------------------------------------
/src/assets/images/logo/singapore.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/singapore.png
--------------------------------------------------------------------------------
/src/assets/images/logo/suzhou.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/suzhou.png
--------------------------------------------------------------------------------
/src/assets/images/logo/taipei.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/taipei.png
--------------------------------------------------------------------------------
/src/assets/images/logo/taiyuan.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/taiyuan.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/taoyuan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/taoyuan.png
--------------------------------------------------------------------------------
/src/assets/images/logo/tianjin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/tianjin.png
--------------------------------------------------------------------------------
/src/assets/images/logo/tokyo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/tokyo.png
--------------------------------------------------------------------------------
/src/assets/images/logo/urumqi.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/urumqi.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/wenzhou.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/wenzhou.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/wuhan.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/wuhan.png
--------------------------------------------------------------------------------
/src/assets/images/logo/wuxi.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/wuxi.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/xiamen.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/xiamen.png
--------------------------------------------------------------------------------
/src/assets/images/logo/xian.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/xian.png
--------------------------------------------------------------------------------
/src/assets/images/logo/xuzhou.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/xuzhou.gif
--------------------------------------------------------------------------------
/src/assets/images/logo/zhengzhou.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/logo/zhengzhou.png
--------------------------------------------------------------------------------
/src/assets/images/more.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/more.png
--------------------------------------------------------------------------------
/src/assets/images/share.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/src/assets/images/share.jpeg
--------------------------------------------------------------------------------
/src/assets/styles/common.less:
--------------------------------------------------------------------------------
1 |
2 | page, view, scroll-view, form, button, image, input, cover-view, movable-area, movable-view {
3 | width: 100%;
4 | margin: 0;
5 | padding: 0;
6 | box-sizing: border-box;
7 | }
8 |
9 | button, .btn {
10 | border-radius: 0;
11 | }
12 | button::after {
13 | border: none;
14 | }
15 |
16 | page {
17 | width: 100%;
18 | height: 100%;
19 | position: relative;
20 | font-size: 32rpx;
21 | -webkit-font-smoothing: antialiased;
22 | color: #333;
23 | background: #fff;
24 | }
25 |
26 | .page-container {
27 | width: 100%;
28 | height: 100%;
29 | padding: 20rpx;
30 | -webkit-overflow-scrolling: touch;
31 | }
32 |
33 | .clearfix:after {
34 | content: " ";
35 | display: block;
36 | clear: both;
37 | height: 0;
38 | }
39 |
40 | .clearfix {
41 | zoom: 1;
42 | }
43 |
--------------------------------------------------------------------------------
/src/assets/styles/variable.less:
--------------------------------------------------------------------------------
1 | @wx-green-L: #1aad19;
2 | @wx-green: #2ba245;
3 | @wx-blue-L: #10aeff;
4 | @wx-blue: #2782D7;
5 | @wx-red: #d84e43;
6 | @wx-yellow: #fdd765;
7 | @wx-yellow-D: #f8ae00;
--------------------------------------------------------------------------------
/src/components/AppMenuBar.vue:
--------------------------------------------------------------------------------
1 |
14 |
15 |
16 |
27 |
28 |
29 |
77 |
--------------------------------------------------------------------------------
/src/components/CityCard.vue:
--------------------------------------------------------------------------------
1 |
13 |
14 |
15 |
16 |
![logo]()
17 |
18 |
{{ instance.name_zh }}
19 |
{{ instance.name_en }}
20 |
21 |
22 |
23 |
24 |
120 |
--------------------------------------------------------------------------------
/src/components/RoutineQuery.vue:
--------------------------------------------------------------------------------
1 |
23 |
24 |
25 |
26 |
27 |
37 |
38 |
39 | {{ sug.title }}
40 |
41 |
42 |
43 |
![]()
44 |
45 |
55 |
56 |
57 | {{ sug.title }}
58 |
59 |
60 |
查询
61 |
62 |
63 |
64 |
237 |
--------------------------------------------------------------------------------
/src/config/cities.js:
--------------------------------------------------------------------------------
1 | // SM.MS 图床地址
2 | const SMMS = 'https://i.loli.net/'
3 | const IMG_BED_BASE = SMMS
4 | let cities = [
5 | {
6 | id: 3001,
7 | name_zh: '东京',
8 | name_en: 'Tokyo',
9 | subway_img: IMG_BED_BASE + '2019/02/13/5c63dafb9fc7c.jpg',
10 | subway_logo: require('../assets/images/logo/tokyo.png'),
11 | city_picture: '',
12 | keywords: '日本,Japan,东京都',
13 | isForeignCity: true
14 | },
15 | {
16 | id: 3002,
17 | name_zh: '伦敦',
18 | name_en: 'London',
19 | subway_img: IMG_BED_BASE + '2019/02/13/5c63dc04ab500.gif',
20 | subway_logo: require('../assets/images/logo/london.png'),
21 | city_picture: '',
22 | keywords: '英国, England, London',
23 | isForeignCity: true
24 | },
25 | {
26 | id: 3003,
27 | name_zh: '巴黎',
28 | name_en: 'Paris',
29 | subway_img: IMG_BED_BASE + '2019/02/13/5c643e17c00d3.gif',
30 | subway_logo: require('../assets/images/logo/paris.png'),
31 | city_picture: '',
32 | keywords: '法国, France',
33 | isForeignCity: true
34 | },
35 | {
36 | id: 3004,
37 | name_zh: '纽约',
38 | name_en: 'NewYork',
39 | subway_img: IMG_BED_BASE + '2019/02/13/5c63ddb5bb5ab.gif',
40 | subway_logo: require('../assets/images/logo/newyork.png'),
41 | city_picture: '',
42 | keywords: '美国, America, USA',
43 | isForeignCity: true
44 | },
45 | {
46 | id: 3005,
47 | name_zh: '首尔',
48 | name_en: 'Seoul',
49 | subway_img: IMG_BED_BASE + '2019/02/13/5c63e082cc891.jpg',
50 | subway_logo: require('../assets/images/logo/seoul.png'),
51 | city_picture: '',
52 | keywords: '韩国, Korea, South Korea',
53 | isForeignCity: true
54 | },
55 | {
56 | id: 3006,
57 | name_zh: '新加坡',
58 | name_en: 'Singapore',
59 | subway_img: IMG_BED_BASE + '2019/02/13/5c63efc606a41.jpg',
60 | subway_logo: require('../assets/images/logo/singapore.png'),
61 | city_picture: '',
62 | keywords: '新加坡',
63 | isForeignCity: true
64 | },
65 | {
66 | id: 3007,
67 | name_zh: '曼谷',
68 | name_en: 'Bangkok',
69 | subway_img: IMG_BED_BASE + '2019/02/13/5c643c57925fc.jpeg',
70 | subway_logo: require('../assets/images/logo/bangkok.png'),
71 | city_picture: '',
72 | keywords: '泰国,Thailand',
73 | isForeignCity: true
74 | },
75 | {
76 | id: 3008,
77 | name_zh: '吉隆坡',
78 | name_en: 'Kuala Lumpur',
79 | subway_img: IMG_BED_BASE + '2019/02/15/5c66641f768d0.png',
80 | subway_logo: require('../assets/images/logo/kuala-lumpur.png'),
81 | city_picture: '',
82 | keywords: '马来西亚',
83 | isForeignCity: true
84 | },
85 | {
86 | id: 3009,
87 | name_zh: '莫斯科',
88 | name_en: 'Moscow',
89 | subway_img: IMG_BED_BASE + '2019/02/15/5c663112c6812.jpg',
90 | subway_logo: require('../assets/images/logo/moscow.png'),
91 | city_picture: '',
92 | keywords: '俄罗斯, Russia',
93 | isForeignCity: true
94 | },
95 | {
96 | id: 3010,
97 | name_zh: '迪拜',
98 | name_en: 'Dubai',
99 | subway_img: IMG_BED_BASE + '2019/02/15/5c6634d26f7c3.jpg',
100 | subway_logo: require('../assets/images/logo/dubai.png'),
101 | city_picture: '',
102 | keywords: '阿拉伯联合酋长国,阿联酋, dubai',
103 | isForeignCity: true
104 | },
105 | {
106 | id: 3011,
107 | name_zh: '伊斯坦布尔',
108 | name_en: 'Istanbul',
109 | subway_img: IMG_BED_BASE + '2019/02/15/5c6659e52a015.png',
110 | subway_logo: require('../assets/images/logo/istanbul.png'),
111 | city_picture: '',
112 | keywords: '土耳其, Turkey',
113 | isForeignCity: true
114 | },
115 | {
116 | id: 3012,
117 | name_zh: '大阪',
118 | name_en: 'Osaka',
119 | subway_img: IMG_BED_BASE + '2019/02/15/5c665ed1573d1.gif',
120 | subway_logo: require('../assets/images/logo/osaka.png'),
121 | city_picture: '',
122 | keywords: '日本,Japan, osaka',
123 | isForeignCity: true
124 | },
125 | /********************分割线*********************/
126 | /********************分割线*********************/
127 | {
128 | id: 1,
129 | name_zh: '北京',
130 | name_en: 'Beijing',
131 | subway_img: IMG_BED_BASE + '2019/02/01/5c54066098040.jpg',
132 | subway_logo: require('../assets/images/logo/beijing.png'),
133 | city_picture: '',
134 | keywords: '河北,内蒙古,山西,北京,BeiJing,capital,China,PRC'
135 | },
136 | {
137 | id: 2,
138 | name_zh: '上海',
139 | name_en: 'Shanghai',
140 | subway_img: IMG_BED_BASE + '2019/02/01/5c54065c323cf.jpg',
141 | subway_logo: require('../assets/images/logo/shanghai.png'),
142 | city_picture: '',
143 | keywords: '江苏,浙江'
144 | },
145 | {
146 | id: 3,
147 | name_zh: '广州',
148 | name_en: 'Canton',
149 | subway_img: IMG_BED_BASE + '2019/02/01/5c54065f25892.jpg',
150 | subway_logo: require('../assets/images/logo/canton.png'),
151 | city_picture: '',
152 | keywords: '广东,广西,湖南,Canton,guangzhou'
153 | },
154 | {
155 | id: 4,
156 | name_zh: '深圳',
157 | name_en: 'Shenzhen',
158 | subway_img: IMG_BED_BASE + '2019/02/01/5c54065ebf07a.jpg',
159 | subway_logo: require('../assets/images/logo/shenzhen.png'),
160 | city_picture: '',
161 | keywords: '广东,福建,香港,澳门,HongKong,Macau'
162 | },
163 | {
164 | id: 5,
165 | name_zh: '香港',
166 | name_en: 'HongKong',
167 | subway_img: IMG_BED_BASE + '2019/02/01/5c541675955a0.jpg',
168 | subway_logo: require('../assets/images/logo/hongkong.png'),
169 | city_picture: '',
170 | keywords: '广东,HongKong,香港,澳门,hk'
171 | },
172 | {
173 | id: 6,
174 | name_zh: '南京',
175 | name_en: 'Nanjing',
176 | subway_img: IMG_BED_BASE + '2019/02/01/5c5419a56753c.jpg',
177 | subway_logo: require('../assets/images/logo/nanjing.png'),
178 | city_picture: '',
179 | keywords: '江苏,浙江,安徽'
180 | },
181 | {
182 | id: 7,
183 | name_zh: '重庆',
184 | name_en: 'Chongqing',
185 | subway_img: IMG_BED_BASE + '2019/02/01/5c541676c044b.jpg',
186 | subway_logo: require('../assets/images/logo/chongqing.png'),
187 | city_picture: '',
188 | keywords: '四川,湖北,贵州'
189 | },
190 | {
191 | id: 8,
192 | name_zh: '武汉',
193 | name_en: 'Wuhan',
194 | subway_img: IMG_BED_BASE + '2019/02/01/5c54167783864.jpg',
195 | subway_logo: require('../assets/images/logo/wuhan.png'),
196 | city_picture: '',
197 | keywords: '湖北,河南,江西'
198 | },
199 | {
200 | id: 9,
201 | name_zh: '成都',
202 | name_en: 'Chengdu',
203 | subway_img: IMG_BED_BASE + '2019/02/06/5c5a964110a3e.jpg',
204 | subway_logo: require('../assets/images/logo/chengdu.png'),
205 | city_picture: '',
206 | keywords: '四川,云南'
207 | },
208 | {
209 | id: 10,
210 | name_zh: '天津',
211 | name_en: 'Tianjin',
212 | subway_img: IMG_BED_BASE + '2019/02/06/5c5a963f6ecea.jpg',
213 | subway_logo: require('../assets/images/logo/tianjin.png'),
214 | city_picture: '',
215 | keywords: '北京,河北,辽宁'
216 | },
217 | {
218 | id: 11,
219 | name_zh: '青岛',
220 | name_en: 'Qingdao',
221 | subway_img: IMG_BED_BASE + '2019/02/06/5c5a963f2b46f.png',
222 | subway_logo: require('../assets/images/logo/qingdao.png'),
223 | city_picture: '',
224 | keywords: '山东'
225 | },
226 | {
227 | id: 12,
228 | name_zh: '大连',
229 | name_en: 'Dalian',
230 | subway_img: IMG_BED_BASE + '2019/02/06/5c5a964112ef2.png',
231 | subway_logo: require('../assets/images/logo/dalian.png'),
232 | city_picture: '',
233 | keywords: '辽宁,吉林,黑龙江'
234 | },
235 | {
236 | id: 13,
237 | name_zh: '台北',
238 | name_en: 'Taipei',
239 | subway_img: IMG_BED_BASE + '2019/02/06/5c5a963f83cf9.jpg',
240 | subway_logo: require('../assets/images/logo/taipei.png'),
241 | city_picture: '',
242 | keywords: '台湾,臺灣'
243 | },
244 | {
245 | id: 14,
246 | name_zh: '苏州',
247 | name_en: 'Suzhou',
248 | subway_img: IMG_BED_BASE + '2019/02/06/5c5a98d9d3046.png',
249 | subway_logo: require('../assets/images/logo/suzhou.png'),
250 | city_picture: '',
251 | keywords: '江苏,浙江'
252 | },
253 | {
254 | id: 15,
255 | name_zh: '西安',
256 | name_en: 'Xi An',
257 | subway_img: IMG_BED_BASE + '2019/03/04/5c7ce54aab6ec.jpg',
258 | subway_logo: require('../assets/images/logo/xian.png'),
259 | city_picture: '',
260 | },
261 | {
262 | id: 16,
263 | name_zh: '杭州',
264 | name_en: 'Hangzhou',
265 | subway_img: IMG_BED_BASE + '2019/02/13/5c639a400017d.jpg',
266 | subway_logo: require('../assets/images/logo/hangzhou.png'),
267 | city_picture: '',
268 | keywords: '浙江,江苏'
269 | },
270 | {
271 | id: 17,
272 | name_zh: '长春',
273 | name_en: 'Changchun',
274 | subway_img: IMG_BED_BASE + '2019/03/04/5c7ce55e7ff5b.jpg',
275 | subway_logo: require('../assets/images/logo/changchun.png'),
276 | city_picture: '',
277 | },
278 | {
279 | id: 18,
280 | name_zh: '郑州',
281 | name_en: 'Zhengzhou',
282 | subway_img: IMG_BED_BASE + '2019/02/13/5c63988067c1c.jpg',
283 | subway_logo: require('../assets/images/logo/zhengzhou.png'),
284 | city_picture: '',
285 | keywords: '河南,河北'
286 | },
287 | {
288 | id: 19,
289 | name_zh: '合肥',
290 | name_en: 'Hefei',
291 | subway_img: IMG_BED_BASE + '2019/03/04/5c7cca600d92b.jpg',
292 | subway_logo: require('../assets/images/logo/hefei.png'),
293 | city_picture: '',
294 | keywords: '安徽,河南,江苏'
295 | },
296 | {
297 | id: 20,
298 | name_zh: '南昌',
299 | name_en: 'Nanchang',
300 | subway_img: IMG_BED_BASE + '2019/03/04/5c7cd007522ce.jpg',
301 | subway_logo: require('../assets/images/logo/nanchang.png'),
302 | city_picture: '',
303 | keywords: '江西,安徽,江苏,福建'
304 | },
305 | {
306 | id: 21,
307 | name_zh: '长沙',
308 | name_en: 'Changsha',
309 | subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
310 | subway_logo: require('../assets/images/logo/changsha.png'),
311 | city_picture: '',
312 | keywords: '湖南,湖北,江西'
313 | },
314 | {
315 | id: 22,
316 | name_zh: '昆明',
317 | name_en: 'Kunming',
318 | subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
319 | subway_logo: require('../assets/images/logo/kunming.png'),
320 | city_picture: '',
321 | keywords: '云南,四川'
322 | },
323 | {
324 | id: 23,
325 | name_zh: '厦门',
326 | name_en: 'Xiamen',
327 | subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
328 | subway_logo: require('../assets/images/logo/xiamen.png'),
329 | city_picture: '',
330 | keywords: '福建,福州'
331 | },
332 | {
333 | id: 24,
334 | name_zh: '高雄',
335 | name_en: 'Kaohsiung',
336 | subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
337 | subway_logo: require('../assets/images/logo/kaohsiung.png'),
338 | city_picture: '',
339 | keywords: '台湾,臺灣'
340 | },
341 | // {
342 | // id: 25,
343 | // name_zh: '澳门',
344 | // name_en: 'Macau',
345 | // subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
346 | // subway_logo: require('../assets/images/logo/xiamen.png'),
347 | // city_picture: '',
348 | // keywords: '广东,香港,澳门'
349 | // },
350 | {
351 | id: 26,
352 | name_zh: '常州',
353 | name_en: 'changzhou',
354 | subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
355 | subway_logo: require('../assets/images/logo/changzhou.gif'),
356 | city_picture: '',
357 | keywords: '江苏'
358 | },
359 | {
360 | id: 27,
361 | name_zh: '哈尔滨',
362 | name_en: 'harbin',
363 | subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
364 | subway_logo: require('../assets/images/logo/harbin.gif'),
365 | city_picture: '',
366 | keywords: '黑龙江'
367 | },
368 | {
369 | id: 28,
370 | name_zh: '呼和浩特',
371 | name_en: 'hohhot',
372 | subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
373 | subway_logo: require('../assets/images/logo/hohhot.gif'),
374 | city_picture: '',
375 | keywords: '蒙古,内蒙古'
376 | },
377 | {
378 | id: 29,
379 | name_zh: '济南',
380 | name_en: 'jinan',
381 | subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
382 | subway_logo: require('../assets/images/logo/jinan.gif'),
383 | city_picture: '',
384 | keywords: '山东'
385 | },
386 | {
387 | id: 30,
388 | name_zh: '兰州',
389 | name_en: 'lanzhou',
390 | subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
391 | subway_logo: require('../assets/images/logo/lanzhou.gif'),
392 | city_picture: '',
393 | keywords: '甘肃,青海'
394 | },
395 | {
396 | id: 31,
397 | name_zh: '宁波',
398 | name_en: 'ningbo',
399 | subway_img: IMG_BED_BASE + '哈哈哈哈SMMS没有图',
400 | subway_logo: require('../assets/images/logo/ningbo.gif'),
401 | city_picture: '',
402 | keywords: '浙江'
403 | }
404 | ]
405 |
406 | export default cities
407 |
--------------------------------------------------------------------------------
/src/config/index.js:
--------------------------------------------------------------------------------
1 | import cities from './cities'
2 |
3 | let config = {
4 | allCities: cities,
5 | qqMapKey: 'VEHBZ-S6A34-QTKUP-DK3HK-TLN5O-DNF5L',
6 | share: {
7 | defaultTitle: '请查收!全球主要城市旅游、地铁信息,方便您的出行!',
8 | defaultPic: require('../assets/images/share.jpeg')
9 | },
10 | link: {
11 | JsDelivr: 'https://cdn.jsdelivr.net/gh/WarpPrism/SubwayRoutineMP@latest/',
12 | MetroMan: 'http://www.metroman.cn/'
13 | },
14 | emoji: {
15 | thinkingFace: '🤔',
16 | pointUp: '☝🏻',
17 | checkMark: '✅'
18 | }
19 | }
20 |
21 | export default config
22 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './App'
3 | // import Store from './store'
4 |
5 | Vue.config.productionTip = false
6 | // Vue.prototype.$store = Store
7 | App.mpType = 'app'
8 |
9 | const app = new Vue(App)
10 | app.$mount()
11 |
--------------------------------------------------------------------------------
/src/mixins/commonMixin.js:
--------------------------------------------------------------------------------
1 | export default {
2 | methods: {
3 | // 跳转到中文维基小程序(深度计算出品)
4 | viewCityWikipedia(city) {
5 | if (!city || !city.name_zh) return
6 | let wikiName = city.name_zh
7 | let specialCityArr = ['台北', '台中', '高雄', '香港', '澳门']
8 | if (!city.isForeignCity && !specialCityArr.includes(wikiName)) {
9 | wikiName = wikiName + '市'
10 | }
11 | console.log('wikiName :>> ', wikiName);
12 | wx.navigateToMiniProgram({
13 | appId: 'wxc5272efe47e0d943',
14 | path: `pages/wiki/wiki?titleUri=${encodeURIComponent(wikiName)}`,
15 | envVersion: 'release',
16 | success(res) {
17 | console.log('navigateToMiniProgram :>> ', res);
18 | }
19 | })
20 | }
21 | }
22 | }
--------------------------------------------------------------------------------
/src/mixins/remoteConfigMixin.js:
--------------------------------------------------------------------------------
1 | import Config from '@/config'
2 | const Local_Config_Key = 'cities_config'
3 |
4 | export default {
5 | methods: {
6 | async getCityConfig(fromRemote = false) {
7 | let config = wx.getStorageSync(Local_Config_Key)
8 | if (!config || fromRemote) {
9 | config = await this.fetchRemoteConfig()
10 | }
11 | return config
12 | },
13 | fetchRemoteConfig() {
14 | return new Promise((resolve, reject) => {
15 | wx.request({
16 | url: `${Config.link.JsDelivr}cities.json`,
17 | method: 'GET',
18 | success: (res) => {
19 | if (res && res.data) {
20 | wx.setStorageSync(Local_Config_Key, res.data)
21 | resolve(res.data)
22 | } else {
23 | reject('fetch remote config error')
24 | }
25 | },
26 | fail: () => {
27 | reject('fetch remote config error')
28 | }
29 | })
30 | })
31 | }
32 | }
33 | }
--------------------------------------------------------------------------------
/src/pages/citydetail/citydetail.vue:
--------------------------------------------------------------------------------
1 |
41 |
42 |
43 |
44 |
45 |
46 |
47 | {{ cityInstance.name_zh }}地铁线路图
48 |
49 |
50 |
{{ cityInstance.name_en }} Metro Diagram
51 |
52 |
53 |
54 |
地铁路线规划
55 |
59 |
60 |
61 |
![]()
62 |
![]()
63 |
64 |
65 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
261 |
--------------------------------------------------------------------------------
/src/pages/citydetail/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './citydetail'
3 |
4 | const app = new Vue(App)
5 | app.$mount()
6 |
--------------------------------------------------------------------------------
/src/pages/citylist/citylist.vue:
--------------------------------------------------------------------------------
1 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
63 |
64 |
![]()
65 |
定位
66 |
67 |
68 |
69 |
70 |
74 |
已为您找到相关城市:
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
暂无您要找的城市{{emoji.thinkingFace}}
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
261 |
--------------------------------------------------------------------------------
/src/pages/citylist/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './citylist'
3 |
4 | const app = new Vue(App)
5 | app.$mount()
6 |
--------------------------------------------------------------------------------
/src/pages/citymap/citymap.vue:
--------------------------------------------------------------------------------
1 |
11 |
12 |
13 |
14 |
28 |
29 |
30 |
31 |
127 |
--------------------------------------------------------------------------------
/src/pages/citymap/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './citymap'
3 |
4 | const app = new Vue(App)
5 | app.$mount()
6 |
--------------------------------------------------------------------------------
/src/pages/cityroutine/cityroutine.vue:
--------------------------------------------------------------------------------
1 |
28 |
29 |
30 |
31 |
45 |
46 |
{{collapseBtnText}}
47 |
48 |
49 |
50 | 推荐路线
51 | 路线 {{ index + 1 }}
52 |
53 |
54 |
55 |
56 |
57 | 查询时间 {{ route.setOutTime }}
58 |
59 |
60 | 预计耗时 {{ route.duration }} {{ route.distance }}
61 |
62 | 请留意公共交通运营时间,以免错过末班车
63 | {{ desc }}
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
337 |
--------------------------------------------------------------------------------
/src/pages/cityroutine/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './cityroutine'
3 |
4 | const app = new Vue(App)
5 | app.$mount()
6 |
--------------------------------------------------------------------------------
/src/pages/citywiki/citywiki.vue:
--------------------------------------------------------------------------------
1 |
24 |
25 |
26 |
27 |
28 |
欢迎来到{{ cityInstance.name_zh }}
29 |
Welcome to {{ cityInstance.name_en }}
30 |
31 |
32 |
33 |
34 |
以下内容来自维基导游 (https://zh.wikivoyage.org) ,仅供查阅参考,使用者应自行判断做决定。
35 |
36 |
37 |
您可点此查看维基百科上的相关条目,获取更多信息。
38 |
39 |
44 | 港澳台属于中华人民共和国不可分割的一部分,以下维基信息可能包含明显误导信息,请注意辨别。
45 |
46 |
47 |
48 |
49 |
50 |
51 |
54 |
55 |
56 |
57 |
201 |
--------------------------------------------------------------------------------
/src/pages/citywiki/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './citywiki'
3 |
4 | const app = new Vue(App)
5 | app.$mount()
6 |
--------------------------------------------------------------------------------
/src/pages/morefeature/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './morefeature'
3 |
4 | const app = new Vue(App)
5 | app.$mount()
6 |
--------------------------------------------------------------------------------
/src/pages/morefeature/morefeature.vue:
--------------------------------------------------------------------------------
1 |
31 |
32 |
33 |
34 |
35 |
36 |
关联小程序
37 |
想要扩展公众号功能?想要增加用户粘度?那就关联此小程序吧!
38 |
操作步骤
39 |
1、以管理员身份登录公众号后台
40 |
2、小程序管理-添加-关联小程序
41 |
3、输入appid wxad716b9e75e773b5
42 |
4、点击关联即可
43 |
44 |
我再考虑一下
45 |
46 |
47 |
48 |
49 |
更多功能
50 |
51 |
52 |
![]()
53 |
中国地铁发展历程
54 |
55 |
截至2020
56 |
57 |
58 |
59 |
![]()
60 |
中国高铁线网图
61 |
62 |
高清大图
63 |
64 |
65 |
80 |
81 |
关于
82 |
83 |
84 |
![]()
85 |
用户使用指南及反馈
86 |
87 |
88 |
89 |
90 |
91 |
![]()
92 |
公众号关联小程序
93 |
94 |
wxad716b9e75e773b5
95 |
96 |
103 |
104 |
105 |
106 |
190 |
--------------------------------------------------------------------------------
/src/pages/standard.vue:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
26 |
--------------------------------------------------------------------------------
/src/pages/userguide/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import App from './userguide'
3 |
4 | const app = new Vue(App)
5 | app.$mount()
6 |
--------------------------------------------------------------------------------
/src/pages/userguide/userguide.vue:
--------------------------------------------------------------------------------
1 |
17 |
18 |
19 |
20 |
21 |
22 |
使用指南
23 |
小程序提供全球主要城市的导游信息和地铁线路信息,地铁线路图支持全屏预览和双指缩放。国内城市地铁支持路线规划和地图查看,国外暂不支持。
24 |
目前国内城市有:北京、上海、深圳、广州、武汉、成都、重庆、天津、青岛、大连、南京、苏州、杭州、郑州、香港、台北等。
国外城市有:东京、伦敦、纽约、首尔、新加坡、曼谷、大阪、莫斯科、迪拜、伊斯坦布尔等。
25 |
小程序方便您到达新城市时,帮您和您的团队获取出行的第一手资料。
26 |
* 请确保开启位置授权,否则部分功能将无法正常使用。
27 |
* 如果您觉得小程序好用,可以分享给好友或微信群,以帮助更多的人!
28 |
29 |
30 |
免责声明
31 |
* 本程序提供的信息、数据、内容等只作参考之用,不代表各城市及其轨道交通运营公司的官方信息和立场,使用过程中应以各城市发布的最新数据为准。
32 |
* 本程序会尽可能与官方数据保持一致,为您及广大用户提供最方便的出行服务。
33 |
* 本程序不对您及他人基于本程序提供信息所作出的决定或行动承担法律责任和义务。
34 |
35 |
用户反馈
36 |
如果您在使用过程中遇到问题,请点击下方按钮
37 |
38 |
39 |
40 |
41 |
42 |
74 |
--------------------------------------------------------------------------------
/src/store/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import Vuex from 'vuex'
3 |
4 | // import user from './modules/user'
5 | // import system from './modules/system'
6 | import map from './modules/map'
7 |
8 | Vue.use(Vuex)
9 |
10 | const debug = process.env.NODE_ENV !== 'production'
11 |
12 | const store = new Vuex.Store({
13 | modules: {
14 | // user,
15 | // system
16 | map
17 | },
18 | strict: debug
19 | })
20 |
21 | export default store
22 |
--------------------------------------------------------------------------------
/src/store/modules/map.js:
--------------------------------------------------------------------------------
1 |
2 | const SET_ROUTINE = 'SET_ROUTINE'
3 |
4 | const state = {
5 | routine: {
6 | lat: '',
7 | lng: '',
8 | polyline: []
9 | }
10 | }
11 |
12 | const mutations = {
13 | [SET_ROUTINE] (state, data) {
14 | console.log(data);
15 | state.routine = data
16 | }
17 | }
18 |
19 | const actions = {
20 | setRoutine({ commit }, data) {
21 | commit(SET_ROUTINE, data)
22 | }
23 | }
24 |
25 | const getters = {
26 | getRoutine(state) {
27 | return state.routine
28 | }
29 | }
30 |
31 | export default {
32 | state,
33 | mutations,
34 | actions,
35 | getters
36 | }
37 |
--------------------------------------------------------------------------------
/src/store/modules/system.js:
--------------------------------------------------------------------------------
1 | import _wx from 'wx-promise'
2 |
3 | const SET_SYSTEM_INFO = 'SET_SYSTEM_INFO'
4 |
5 | const state = {
6 | systemInfo: {
7 | system: '',
8 | model: '',
9 | platform: '',
10 | isipx: '',
11 | screenWidth: '',
12 | screenHeight: '',
13 | rpx2pxRate: ''
14 | }
15 | }
16 |
17 | const mutations = {
18 | // 设置设备信息
19 | [SET_SYSTEM_INFO] (state, info) {
20 | state.systemInfo.system = info.system
21 | state.systemInfo.model = info.model
22 | state.systemInfo.platform = info.platform
23 | state.systemInfo.isipx = info.model.includes('iPhone X')
24 | state.systemInfo.screenWidth = info.windowWidth
25 | state.systemInfo.screenHeight = info.windowHeight
26 | state.systemInfo.rpx2pxRate = info.windowWidth / 750
27 | }
28 | }
29 |
30 | const actions = {
31 | setSystemInfo ({ commit }) {
32 | return _wx.getSystemInfo().then(info => {
33 | commit(SET_SYSTEM_INFO, info)
34 | return info
35 | })
36 | }
37 | }
38 |
39 | const getters = {
40 | getSystemInfo (state) {
41 | return state.systemInfo
42 | }
43 | }
44 |
45 | export default {
46 | state,
47 | mutations,
48 | actions,
49 | getters
50 | }
51 |
--------------------------------------------------------------------------------
/src/store/modules/user.js:
--------------------------------------------------------------------------------
1 | const SET_USER_DATA = 'SET_USER_DATA'
2 | const SET_USER_INFO = 'SET_USER_INFO'
3 |
4 | const state = {
5 | // iv, signature等
6 | userData: {},
7 | // avatar nickname等
8 | userInfo: {}
9 | }
10 |
11 | const mutations = {
12 | [SET_USER_DATA] (state, data) {
13 | if (JSON.stringify(state.userData) == "{}") {
14 | state.userData = data || {}
15 | }
16 | },
17 | [SET_USER_INFO] (state, data) {
18 | if (JSON.stringify(state.userInfo) == "{}") {
19 | state.userInfo = data || {}
20 | }
21 | }
22 | }
23 |
24 | const actions = {
25 | setUserData({ commit }, data) {
26 | commit(SET_USER_DATA, data)
27 | },
28 | setUserInfo({ commit }, data) {
29 | commit(SET_USER_INFO, data)
30 | }
31 | }
32 |
33 | const getters = {
34 | getUserData(state) {
35 | return state.userData
36 | },
37 | getUserInfo(state) {
38 | return state.userInfo
39 | }
40 | }
41 |
42 | export default {
43 | state,
44 | mutations,
45 | actions,
46 | getters
47 | }
48 |
--------------------------------------------------------------------------------
/src/utils/index.js:
--------------------------------------------------------------------------------
1 | function formatNumber (n) {
2 | const str = n.toString()
3 | return str[1] ? str : `0${str}`
4 | }
5 |
6 | export function formatTime (date) {
7 | const year = date.getFullYear()
8 | const month = date.getMonth() + 1
9 | const day = date.getDate()
10 |
11 | const hour = date.getHours()
12 | const minute = date.getMinutes()
13 | const second = date.getSeconds()
14 |
15 | const t1 = [year, month, day].map(formatNumber).join('/')
16 | const t2 = [hour, minute, second].map(formatNumber).join(':')
17 |
18 | return `${t1} ${t2}`
19 | }
20 |
21 | export default {
22 | formatNumber,
23 | formatTime
24 | }
25 |
--------------------------------------------------------------------------------
/static/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/static/.gitkeep
--------------------------------------------------------------------------------
/static/data/wiki_original/佛山.html:
--------------------------------------------------------------------------------
1 |
佛山市位于广州市的西边,与广州市有地铁广佛线连接,是“广佛同城”、“珠三角经济圈”重要的部分,是广东省第三大的城市,也是中国古代四大名镇之一。佛山又名禅城,是粤剧之乡,还是南狮的发源地,拥有浓郁的岭南文化特色。佛山的陶瓷,在中国与景德镇的陶瓷几乎同名。作为叶问、李小龙的故乡,佛山还拥有浓郁的武术底蕴。
2 |
3 |
4 |
5 |
6 |
7 | - 禅城区
8 | - 南海区
9 | - 顺德区
10 | - 三水区
11 | - 高明区
广佛同城[编辑]
12 | - 佛山因为临近广州,有广州政协委员提出了广佛同城的概念,随着广佛地铁的开通,广佛同城正一步步形成。
13 |
14 | - 目前,佛山机场开通了至北京、上海、西安、重庆、昆明的航班。
15 | - 在机场有来往于佛山市区的机场班车。
16 |
17 | - 在佛山,公交的票价为2-16元。
18 | - 佛山公交可使用佛山交通卡、羊城通、广佛通。
出租车[编辑]
19 | - 8元起,两公里内8元,12公里内每公里2.8元,之后每公里4.2元。
20 | - 广佛地铁在佛山境内的站点包括新城东、东平、世纪莲、澜石、魁奇路、季华园、同济路、祖庙、普君北路、朝安、桂城、南桂路、礌岗、千灯湖、金融高新区。新城东开出的头班车为6:00,末班车为22:30,广州境内燕崗开出的头班车为6:08,末班车为23:06。
21 |
22 | - 佛山祖庙,地址 禅城区祖庙路21号佛山市博物馆内(地铁广佛线祖庙站)。🕘 每日 8:30-19:00。💰 ¥20(60岁以上老人半价)。簡介 佛山祖庙是一座供奉道教玄天大帝的神庙。整个佛山祖庙建筑群由祖庙、孔庙、碑廊、陈列馆和园林组成,与黄飞鸿纪念馆相通,占地18600平方米,现为全国重点文物保护单位、广东省文明旅游区示范点、佛山市爱国主义教育基地。
23 | - 清晖园,地址 大良街道。🕘 8:00-18:00(3月21日-10月20日),8:00-17:30(10月21日-次年3月20日)。💰 成人¥15,1.2米以下儿童免费,70岁以上老人凭相关证件免票。簡介 建于清嘉庆年间。为广东四大名园之一,岭南园林的代表。1989年被列入广东省文物保护单位名录(3-54),2013年3月被列入列入第七批全国重点文物保护单位,是国家AAAA级旅游景区。
夜生活[编辑]下一站[编辑]
30 |
31 |
51 |
64 |
65 |
67 |
--------------------------------------------------------------------------------
/static/end.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/static/end.png
--------------------------------------------------------------------------------
/static/start.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/WarpPrism/SubwayRoutineMP/09b3b96f53c7ad75c5172e83c4f80e3e80f8aeaa/static/start.png
--------------------------------------------------------------------------------