Commit 3c3db63a2fdcb1c7d74fefa45ac0ba7b2aea53ce

Authored by Andy
1 parent d966c863

add img

Showing 84 changed files with 0 additions and 1563 deletions
amWiki/images/2.jpg deleted

103 KB

amWiki/images/a/TB2wcipuXXXXXbUXXXXXXXXXXXX_!!0-jiyoujia.jpg deleted

467 KB

amWiki/images/chechanggaikuang/1.jpg deleted

118 KB

amWiki/images/chechanggaikuang/10.jpg deleted

31.8 KB

amWiki/images/chechanggaikuang/2.jpg deleted

103 KB

amWiki/images/chechanggaikuang/3.jpg deleted

16.5 KB

amWiki/images/chechanggaikuang/4.jpg deleted

6.97 KB

amWiki/images/chechanggaikuang/5.jpg deleted

174 KB

amWiki/images/chechanggaikuang/6.jpg deleted

16.7 KB

amWiki/images/chechanggaikuang/7.jpg deleted

30.6 KB

amWiki/images/chechanggaikuang/8.jpg deleted

59.7 KB

amWiki/images/chechanggaikuang/9.jpg deleted

19.6 KB

amWiki/images/checyy/1.jpg deleted

14.6 KB

amWiki/images/checyy/2.jpg deleted

42.4 KB

amWiki/images/checyy/3.jpg deleted

40.2 KB

amWiki/images/checyy/4.jpg deleted

20.9 KB

amWiki/images/checyy/5.jpg deleted

50.5 KB

amWiki/images/checyy/6.jpg deleted

27.2 KB

amWiki/images/checyy/7.jpg deleted

24.6 KB

amWiki/images/icons.svg deleted
1 -<?xml version="1.0" encoding="utf-8"?>  
2 -<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">  
3 - <symbol id="icon:navHome" viewBox="0 0 32 32" style="fill:currentColor">  
4 - <path d="m16 0l-16 16h4v16h24v-16h4l-16-16zm8 28h-6v-6h-4v6h-6v-14l8-6 8 5.7v14z"/>  
5 - </symbol>  
6 - <symbol id="icon:navFilter" viewBox="0 0 32 32" style="fill:currentColor">  
7 - <g transform="scale(0.03125, 0.03125)">  
8 - <path d="M400.627447 927.694607c-25.929556 0-46.966685-21.037129-46.966685-46.966685L353.660762 542.308283 74.339102 172.687014c-11.313673-14.065344-13.514805-33.45188-5.748934-49.719378 7.828292-16.267499 24.339338-26.663266 42.380226-26.663266l801.437042 0c17.673521 0 33.879622 9.968026 41.891086 25.746384s6.482645 34.736129-3.975545 48.985668L669.540036 541.14683l0 211.700563c0 25.929556-21.037129 46.966685-46.966685 46.966685-25.929556 0-46.966685-21.037129-46.966685-46.966685L575.606667 525.796214c0-9.968026 3.180436-19.691481 9.051143-27.764344l235.101529-307.793108L208.94173 190.238762l228.317009 306.142515c6.665817 8.317433 10.335393 18.7132 10.335393 29.41596l0 354.931708C447.594131 906.657478 426.557002 927.694607 400.627447 927.694607z"></path>  
9 - </g>  
10 - </symbol>  
11 - <symbol id="icon:navArrow" viewBox="0 0 32 32" style="fill:currentColor">  
12 - <g transform="scale(0.03125, 0.03125)">  
13 - <path d="M959.391517 255.877715 511.696078 703.573153 64.00064 255.877715Z"></path>  
14 - </g>  
15 - </symbol>  
16 - <symbol id="icon:backTop" viewBox="0 0 32 32" style="fill:currentColor">  
17 - <g transform="scale(0.03125, 0.03125)">  
18 - <path d="M849.513502 524.698207l-308.405045-310.430168c-6.833639-6.867408-15.761985-10.1645-24.656563-10.095939-1.201361-0.103354-2.231831-0.686638-3.432169-0.686638-5.015224 0-9.68457 1.167592-13.978363 3.090385-4.325515 1.647523-8.445346 4.155646-11.948123 7.658424l-278.290167 277.807167c-13.426801 13.392008-13.46057 35.130102-0.034792 48.556902 6.695492 6.729262 15.487739 10.096962 24.312732 10.096962 8.7902 0 17.546631-3.367701 24.27794-10.028401l221.320665-220.97581 0 604.927459c0 18.99154 15.384385 34.340109 34.340109 34.340109 18.952654 0 34.340109-15.34857 34.340109-34.340109L547.359834 318.007751l253.460666 255.111259c6.696516 6.730285 15.557324 10.129708 24.347524 10.129708s17.512862-3.331885 24.208355-9.994632C862.872764 559.897893 862.90551 538.123984 849.513502 524.698207zM890.757858 134.805242 135.282614 134.805242c-18.954701 0-34.340109-15.384385-34.340109-34.340109s15.384385-34.340109 34.340109-34.340109l755.475244 0c18.98847 0 34.339086 15.384385 34.339086 34.340109S909.745305 134.805242 890.757858 134.805242z"></path>  
19 - </g>  
20 - </symbol>  
21 - <symbol id="icon:navStart" viewBox="0 0 32 32" style="fill:currentColor">  
22 - <g transform="scale(0.03125, 0.03125)">  
23 - <path d="M102.548584 218.264049l818.644959 0 0 102.33062-818.644959 0 0-102.33062ZM102.548584 461.299271l818.644959 0 0 102.33062-818.644959 0 0-102.33062ZM102.548584 704.334493l818.644959 0 0 102.33062-818.644959 0 0-102.33062Z"></path>  
24 - </g>  
25 - </symbol>  
26 - <symbol id="icon:navClose" viewBox="0 0 32 32" style="fill:currentColor">  
27 - <g transform="scale(0.03125, 0.03125)">  
28 - <path d="M588.99845 509.618605l412.775194-412.775194c19.051163-19.051163 19.051163-57.153488 0-82.555039-19.051163-19.051163-57.153488-19.051163-82.555039 0L512.793798 427.063566 100.018605 20.63876c-19.051163-19.051163-57.153488-19.051163-82.555039 0-19.051163 19.051163-19.051163 57.153488 0 82.555039L430.23876 509.618605l-412.775194 412.775194c-19.051163 19.051163-19.051163 57.153488 0 82.555039C30.164341 1011.299225 49.215504 1017.649612 61.916279 1017.649612s31.751938-6.350388 38.102326-19.051163L512.793798 592.173643l412.775194 412.775194c12.700775 12.700775 25.40155 19.051163 38.102326 19.051163 12.700775 0 31.751938-6.350388 38.102326-19.051163 19.051163-19.051163 19.051163-57.153488 0-82.555039L588.99845 509.618605z"></path>  
29 - </g>  
30 - </symbol>  
31 - <symbol id="icon:linkAnchor" viewBox="0 0 32 32" style="fill:currentColor">  
32 - <g transform="scale(0.03125, 0.03125)">  
33 - <path d="M616.601336 477.134935c0-96.148827-76.528977-174.34477-170.628122-174.34477l-138.339742 0.027629c-98.788957 0.007163-179.177845 78.195943-179.177845 174.330444l0.017396 69.698408c-0.024559 96.15292 80.406285 174.359097 179.205475 174.359097l38.696324 0.00307c19.815301-0.024559 35.851533-15.624862 35.848463-34.882462 0.00307-19.250436-16.032138-34.853809-35.823903-34.853809l-38.749536 0c-59.268872-0.007163-109.451808-46.925752-109.465111-104.604406l0-69.733201c0-57.668421 50.154283-104.58394 109.462041-104.594173l138.329509-0.024559c56.472176 0.024559 100.867292 46.911426 100.890828 104.618732l1.496074 34.872229c0 9.627265 3.810792 18.365276 9.969049 24.65554 6.178723 6.310729 14.728446 10.209526 24.153096 10.206456 18.84623 0.00307 34.118052-15.600303 34.118052-34.860972L616.601336 477.134935zM895.526977 477.152331c0.024559-96.148827-80.406285-174.355003-179.205475-174.359097l-38.696324-0.00307c-19.815301 0.024559-35.851533 15.627932-35.851533 34.882462 0 19.254529 16.036231 34.853809 35.826973 34.857902l38.745443 0c59.268872 0.00307 109.451808 46.922682 109.469204 104.604406l0 69.733201c0 57.668421-50.154283 104.58394-109.462041 104.591103l-138.329509 0.027629c-56.472176-0.024559-100.867292-46.911426-100.890828-104.618732l-1.496074-34.872229c0-9.630335-3.810792-18.365276-9.969049-24.65554-6.181793-6.314823-14.728446-10.209526-24.153096-10.205433-18.84623-0.007163-34.119075 15.600303-34.119075 34.860972l0 34.872229c0 96.145757 76.532047 174.340677 170.631192 174.340677l138.339742-0.024559c98.788957-0.007163 179.177845-78.199013 179.173752-174.330444L895.526977 477.152331z"></path>  
34 - </g>  
35 - </symbol>  
36 - <symbol id="icon:loading" viewBox="0 0 32 32" style="fill:currentColor">  
37 - <g transform="scale(0.03125, 0.03125)">  
38 - <path d="M955.733333 765.866667c0 0 0 2.133333 0 2.133333-12.8 21.333333-38.4 27.733333-57.6 14.933333-19.2-10.666667-27.733333-36.266667-17.066667-57.6l0 0c36.266667-64 57.6-136.533333 57.6-213.333333s-21.333333-151.466667-57.6-213.333333l0 0c-10.666667-19.2-4.266667-44.8 17.066667-57.6 21.333333-12.8 46.933333-4.266667 57.6 14.933333 0 0 0 2.133333 0 2.133333 42.666667 74.666667 68.266667 162.133333 68.266667 253.866667S998.4 691.2 955.733333 765.866667zM768 955.733333C768 955.733333 765.866667 955.733333 768 955.733333c-76.8 42.666667-164.266667 68.266667-256 68.266667s-179.2-25.6-253.866667-68.266667c0 0-2.133333 0-2.133333 0-21.333333-12.8-27.733333-38.4-14.933333-57.6 12.8-21.333333 38.4-27.733333 57.6-14.933333 0 0 0 0 2.133333 0l0 0C362.666667 917.333333 435.2 938.666667 512 938.666667s149.333333-21.333333 211.2-57.6l0 0c0 0 0 0 2.133333 0 21.333333-12.8 46.933333-4.266667 57.6 14.933333C795.733333 917.333333 789.333333 942.933333 768 955.733333zM727.466667 142.933333 727.466667 142.933333C663.466667 106.666667 590.933333 85.333333 512 85.333333s-151.466667 21.333333-213.333333 57.6l0 0c-19.2 10.666667-44.8 4.266667-57.6-17.066667C228.266667 106.666667 234.666667 81.066667 256 68.266667c0 0 2.133333 0 2.133333 0C332.8 25.6 420.266667 0 512 0s179.2 25.6 253.866667 68.266667c0 0 2.133333 0 2.133333 0 21.333333 12.8 27.733333 38.4 14.933333 57.6C772.266667 147.2 746.666667 153.6 727.466667 142.933333zM125.866667 782.933333C106.666667 795.733333 81.066667 789.333333 68.266667 768c0 0 0-2.133333 0-2.133333C25.6 691.2 0 603.733333 0 512s25.6-179.2 68.266667-253.866667c0 0 0-2.133333 0-2.133333 12.8-21.333333 38.4-27.733333 57.6-14.933333 21.333333 12.8 27.733333 38.4 14.933333 57.6 0 0 0 0 0 2.133333l0 0C106.666667 362.666667 85.333333 435.2 85.333333 512s21.333333 149.333333 57.6 211.2l0 0c0 0 0 0 0 2.133333C153.6 746.666667 147.2 772.266667 125.866667 782.933333z"></path>  
39 - </g>  
40 - </symbol>  
41 - <symbol id="icon:search" viewBox="0 0 32 32" style="fill:currentColor">  
42 - <g transform="scale(0.03125, 0.03125)">  
43 - <path d="M941.427376 910.59516c-16.080234 16.010649-69.712735 18.382673-85.792968 2.378164L631.709429 684.444491c61.748343-50.087768 70.796416-148.074454 70.796416-199.626573 0-148.759045-109.305475-260.410961-257.868045-260.410961-148.56871 0-256.612449 109.908202-256.612449 258.673387 0 148.752906 102.096283 261.730003 250.664993 261.730003 30.759561 0 44.760436 0.037862 72.293513-9.466606l0.38681 1.483794c7.000438-3.544733 77.435627-12.098549 77.435627 60.962443 0 20.455891-15.623839 41.425482-34.932604 48.178279-32.66905 11.420097-75.431993 16.936741-108.60144 16.936741-211.592093 0-381.180536-169.367409-381.180536-380.807029 0-211.370035 169.589466-382.79122 381.180536-382.79122 211.667817 0 381.180536 171.421184 381.180536 382.79122 0 65.812915-12.979616 127.682008-40.201607 179.176822l157.154249 159.189605C959.423239 836.475046 957.439048 894.660236 941.427376 910.59516L941.427376 910.59516zM941.427376 910.59516"></path>  
44 - </g>  
45 - </symbol>  
46 - <symbol id="icon:contents" viewBox="0 0 32 32" style="fill:currentColor">  
47 - <g transform="scale(0.03125, 0.03125)">  
48 - <path d="M173.311 317.051l677.38 0c20.782 0 37.632-22.186 37.632-49.552 0-27.363-16.85-49.551-37.632-49.551l-677.38 0c-20.782 0-37.633 22.188-37.633 49.551C135.678 294.865 152.528 317.051 173.311 317.051zM850.69 482.948l-677.38 0c-20.782 0-37.633 22.188-37.633 49.551 0 27.366 16.851 49.553 37.633 49.553l677.38 0c20.782 0 37.632-22.187 37.632-49.553C888.322 505.136 871.473 482.948 850.69 482.948zM865.307 706.948l-414.29 0c-12.71 0-23.017 22.188-23.017 49.551 0 27.366 10.307 49.553 23.017 49.553l414.29 0c12.71 0 23.016-22.187 23.016-49.553C888.322 729.136 878.017 706.948 865.307 706.948z"></path>  
49 - </g>  
50 - </symbol>  
51 - <symbol id="icon:footnoteBack" viewBox="0 0 32 32" style="fill:currentColor">  
52 - <g transform="scale(0.03125, 0.03125)">  
53 - <path transform="rotate(-118.97699737548828 544.0010986328125,517.0001831054688)" d="m679.72461,226.14308l0,-218.14282l271.44708,290.8571l-271.44708,290.85712l0,-218.14285c0,0 -407.17047,0 -407.17047,218.14285s339.30872,290.85706 339.30872,290.85706l0,145.42859c0,0 -475.03235,-72.71429 -475.03235,-436.28564c0.00006,-290.85712 339.30887,-363.5714 542.8941,-363.5714z"/>  
54 - </g>  
55 - </symbol>  
56 -</svg>  
57 \ No newline at end of file 0 \ No newline at end of file
amWiki/images/logo.png deleted

4.6 KB

amWiki/images/menubar_bg.png deleted

958 Bytes

amWiki/images/paiban/a/1.jpg deleted

9.19 KB

amWiki/images/paiban/a/10.jpg deleted

45.2 KB

amWiki/images/paiban/a/11.jpg deleted

60.7 KB

amWiki/images/paiban/a/12.jpg deleted

56.2 KB

amWiki/images/paiban/a/13.jpg deleted

39.4 KB

amWiki/images/paiban/a/14.jpg deleted

7.22 KB

amWiki/images/paiban/a/2.jpg deleted

46 KB

amWiki/images/paiban/a/3.jpg deleted

33.6 KB

amWiki/images/paiban/a/4.jpg deleted

42.2 KB

amWiki/images/paiban/a/5.jpg deleted

39.9 KB

amWiki/images/paiban/a/6.jpg deleted

39.9 KB

amWiki/images/paiban/a/7.jpg deleted

51.5 KB

amWiki/images/paiban/a/8.jpg deleted

42 KB

amWiki/images/paiban/a/9.jpg deleted

44.1 KB

amWiki/images/shouqc/1.jpg deleted

35.4 KB

amWiki/images/shouqc/10.jpg deleted

29.4 KB

amWiki/images/shouqc/11.jpg deleted

19.6 KB

amWiki/images/shouqc/12.jpg deleted

29 KB

amWiki/images/shouqc/2.jpg deleted

33.1 KB

amWiki/images/shouqc/3.jpg deleted

36.2 KB

amWiki/images/shouqc/4.jpg deleted

22.2 KB

amWiki/images/shouqc/5.jpg deleted

19 KB

amWiki/images/shouqc/6.jpg deleted

25.1 KB

amWiki/images/shouqc/7.jpg deleted

29.3 KB

amWiki/images/shouqc/8.jpg deleted

21.2 KB

amWiki/images/shouqc/9.jpg deleted

32.1 KB

amWiki/images/shouye/1.jpg deleted

88.9 KB

amWiki/images/tingcjl/1.jpg deleted

28.7 KB

amWiki/images/tingcjl/2.jpg deleted

14 KB

amWiki/images/tingcjl/3.jpg deleted

25.1 KB

amWiki/images/tingcsr/1.jpg deleted

29.4 KB

amWiki/images/tingcsr/2.jpg deleted

23.7 KB

amWiki/images/tingcsr/3.jpg deleted

13.9 KB

library/03-电脑端操作说明/0001-停车场.md renamed to library/01-电脑端操作说明/0001-书写案例.md
library/03-电脑端操作说明/001-首页.md renamed to library/01-电脑端操作说明/001-首页.md
library/03-电脑端操作说明/002-车场概览/0001-运行概况.md renamed to library/01-电脑端操作说明/002-车场概览/0001-运行概况.md
library/03-电脑端操作说明/002-车场概览/0002-收入概况.md renamed to library/01-电脑端操作说明/002-车场概览/0002-收入概况.md
library/03-电脑端操作说明/002-车场概览/0003-车场概况.md renamed to library/01-电脑端操作说明/002-车场概览/0003-车场概况.md
library/03-电脑端操作说明/003-车场运营/0001-运行监控.md renamed to library/01-电脑端操作说明/003-车场运营/0001-运行监控.md
library/03-电脑端操作说明/003-车场运营/0002-排班管理/00001-排班查询.md renamed to library/01-电脑端操作说明/003-车场运营/0002-排班管理/00001-排班查询.md
library/03-电脑端操作说明/003-车场运营/0002-排班管理/00002-排班设置.md renamed to library/01-电脑端操作说明/003-车场运营/0002-排班管理/00002-排班设置.md
library/03-电脑端操作说明/003-车场运营/0003-授权车管理/00001-会员卡管理.md renamed to library/01-电脑端操作说明/003-车场运营/0003-授权车管理/00001-会员卡管理.md
library/03-电脑端操作说明/003-车场运营/0003-授权车管理/00002-会员卡统计.md renamed to library/01-电脑端操作说明/003-车场运营/0003-授权车管理/00002-会员卡统计.md
library/03-电脑端操作说明/003-车场运营/0003-授权车管理/00003-卡规则设置.md renamed to library/01-电脑端操作说明/003-车场运营/0003-授权车管理/00003-卡规则设置.md
library/03-电脑端操作说明/003-车场运营/0003-授权车管理/00004-白名单.md renamed to library/01-电脑端操作说明/003-车场运营/0003-授权车管理/00004-白名单.md
library/03-电脑端操作说明/004-停车记录.md renamed to library/01-电脑端操作说明/004-停车记录.md
library/03-电脑端操作说明/005-收益分析/0001-停车收入.md renamed to library/01-电脑端操作说明/005-收益分析/0001-停车收入.md
library/03-电脑端操作说明/005-收益分析/0002-收益测算.md renamed to library/01-电脑端操作说明/005-收益分析/0002-收益测算.md
library/03-电脑端操作说明/005-收益分析/0003-收费员收益统计.md renamed to library/01-电脑端操作说明/005-收益分析/0003-收费员收益统计.md
library/01-首页/01-amWiki轻文库简介.md deleted
1 -# amWiki 轻文库简介  
2 -  
3 -![amWiki logo](https://amwiki.xf09.net/docs/assets/logo.png)  
4 -amWiki 是一款基于 Javascript 脚本语言、依赖 Atom 编辑器、使用 Markdown 标记语法的轻量级开源 wiki 文库系统。  
5 -amWiki 致力于让大家可以更简单、更便捷的建设个人和团队文库系统!  
6 -  
7 -[[view amWiki on Github](https://github.com/TevinLi/amWiki)]  
8 -  
9 -GitHub:  
10 -[![](https://img.shields.io/github/stars/TevinLi/amWiki.svg?style=social&label=Star)](https://github.com/TevinLi/amWiki "GitHub Stars")  
11 -[![](https://img.shields.io/github/forks/TevinLi/amWiki.svg?style=social&label=Fork)](https://github.com/TevinLi/amWiki "GitHub Forks")  
12 -[![](https://img.shields.io/github/issues-raw/TevinLi/amWiki.svg)](https://github.com/TevinLi/amWiki "GitHub Open Issues")  
13 -[![](https://img.shields.io/github/issues-closed-raw/TevinLi/amWiki.svg)](https://github.com/TevinLi/amWiki "GitHub Closed Issues")  
14 -[![](https://img.shields.io/github/contributors/TevinLi/amWiki.svg)](https://github.com/TevinLi/amWiki "GitHub Contributors")  
15 -Apm:  
16 -[![apm](https://img.shields.io/apm/v/amWiki.svg)](https://atom.io/packages/amWiki "Apm Version")  
17 -[![apm](https://img.shields.io/apm/dm/amWiki.svg)](https://atom.io/packages/amWiki "Apm Downloads")  
18 -[![apm](https://img.shields.io/apm/l/amWiki.svg)](https://atom.io/packages/amWiki "MIT License")  
19 -  
20 -## amWiki 优势  
21 -- 文档系统采用 Markdown 语法 [>>Markdown 快速开始](?file=001-学习amWiki/05-学习markdown/01-Markdown快速开始)  
22 -- 无需服务端开发,只需支持 http 访问的静态网页空间  
23 -- 不使用数据库,使用 `.md` 扩展名存储文档为本地文件  
24 -- 一键创建新文库,自动生成一套 Html 页面  
25 -- 自动更新文库导航目录  
26 -- 支持截图直接粘帖为本地 png 并插入当前 Markdown 文档  
27 -- Web 端页面自适应显示,适合各种 Web 平台与屏幕尺寸  
28 -- 支持接口文档自动抓取内容生成简单的 Ajax 测试  
29 -- ... (更多内容期待您的发现)  
30 -  
31 -## 效果演示  
32 -**Web端**  
33 -一键创建新文库默认生成Web端效果一览:[https://tevinli.github.io/amWiki/](https://tevinli.github.io/amWiki/index.html)  
34 -  
35 -**工作端**  
36 -工作端需要您安装 Atom 与 amWiki 才能体验  
library/01-首页/02-amWiki功能导图.md deleted
1 -# amWiki 功能导图  
2 -  
3 -![amWiki功能导图](https://amwiki.xf09.net/docs/assets/mapping.png)  
4 -  
5 -**说明**:灰色文字代表的功能部分,表示目前版本没有,但是已经列入开发计划  
library/01-首页/03-如何开始一个新amWiki轻文库.md deleted
1 -# 如何开始一个新 amWiki 轻文库  
2 -  
3 -## 开始一个新文库的步骤  
4 -  
5 -1. ##### 下载 Github 出品的开源文本编辑器 [Atom](https://atom.io/ "打开Atom官网"),并安装  
6 -![](https://amwiki.xf09.net/docs/assets/001.tiny/02-0e63f48d.png)  
7 -  
8 -2. ##### 安装 Atom 完成之后,再安装插件 amWiki,您可以通过以下三种途径安装:  
9 - - 【方式一】:通过 Atom 菜单,File -> Setting -> Install -> 搜索 `amWiki`  
10 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/02-ec2b10b3.png)  
11 - <br>  
12 - - 【方式二】:运行:`apm install amWiki`  
13 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/02-37a29814.png)  
14 - <br>  
15 - - 【方式三】:从Github的 [amWiki版本发布](https://github.com/TevinLi/amWiki/releases) 下载zip,(windows)解压到 `C:\Users\Administrator\.atom\packages`,并将文件夹名 `amWiki-x.x.x` 改为 `amWiki`  
16 -  
17 -3. ##### 重启 Atom (必须)  
18 -  
19 -4. ##### 在本地您需要创建文库的位置创建一个文件夹 (非 Atom 编辑器中)  
20 -  
21 -5. ##### 在 Atom 中 `Add Project Folder` (添加项目文件夹),并指向刚创建的文件夹  
22 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/03-7ce48bba.png)  
23 -  
24 -6. ##### 在 Atom 刚创建的项目下新建 `config.json` 文件,并按 json 格式配置以下属性:  
25 - - **name**,您的文库名称,设置但为空或不设置将显示默认名  
26 - - **ver**,文本版本号或维护者名号,设置但为空将不显示,注意诺不设置此属性将显示 amWiki 作者  
27 - - **logo**,logo 的 url,设置但为空或不设置将显示默认 logo  
28 - - **colour**,自定义颜色,默认为蓝色  
29 - - **testing**,是否启用接口测试模块,默认值 false  
30 - - 例如:  
31 - ```javascript  
32 - {  
33 - "name": "A3项目文档中心",  
34 - "ver": "",  
35 - "logo": "http://abc.com/logo.jpg",  
36 - "testing": true  
37 - }  
38 - ```  
39 -7. ##### 保持 `config.json` 处于当前打开状态,在 Atom 菜单点击:  
40 -  
41 - amWiki文库 -> 通过“config.json”创建新文库  
42 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/02-78f2030d.png)  
43 -  
44 -8. ##### 此时项目中自动创建了许多内容,其中 library 文件夹即为您的文库文件夹  
45 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/02-d72e59a9.png)  
46 -  
47 -9. ##### 使用 `F12` 启动本地静态服务器,访问刚刚自动创建的 index.html  
48 -  
49 -  
50 -## 文库目录结构  
51 -项目目录自动生创建的内容如下  
52 -  
53 - index.html // http 访问入口页面  
54 - amWiki/ // amWiki Web 端程序文件夹  
55 - library/ // 您的 Markdown 文库目录,所有文件必须使用 .md 格式  
56 - ├ $navigation.md // amWiki 文库目录导航文件,可自动/手动更新  
57 - ├ 首页.md // Web 端打开页面时页面页面默认显示的内容  
58 - ├ 001-学习amWiki/ // Markdown 文件夹01  
59 - │ ├ 001-关于amWiki // 一些 Markdown 文档,支持二级目录  
60 - │ └ 002-...  
61 - ├ 002-文档示范/ // Markdown 文件夹02  
62 - │ ├ 001-通用api // 一些 Markdown 文档,支持二级目录  
63 - │ └ 002-...  
64 - └ 003-... // 更多 Markdown 文件夹  
65 - (assetes/) // 如果您粘帖截图,图片文件将自动创建在此处  
66 -  
67 -  
68 -## 如何使用  
69 -一键创建新文库后,您可以通过以下方式开始 amWiki 文库之旅:  
70 -  
71 -1. 在 Atom 编辑器中使用快捷键 `F12` 或在浏览器中使用 http 访问刚刚创建的 index.html。  
72 -2. PC 端使用左侧导航栏、移动端使用右上角弹出菜单来切换页面。  
73 -3. 在导航栏顶部,可以使用筛选功能通过输入关键词对整个导航目录进行筛选。  
74 -4. 如果存在页内目录,直接点击,页内目录使用 hash 滚动;同时您可以直接带 hash 分享,以方便他人快速浏览指定内容。  
library/01-首页/04-如何编辑amWiki轻文库.md deleted
1 -# 如何编辑 amWiki 轻文库  
2 -  
3 -文库创建后,您就可以编辑自己的文库了  
4 -  
5 -## 基本编辑  
6 -  
7 -1. ##### 新建文件或文件夹,组织您自己的文库  
8 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/04-88742d4f.png)  
9 -  
10 -2. ##### 每个文件夹或文件要求使用 `id-名称.md` 来命名,其中:  
11 -  
12 - 1. id 仅允许 **整数** 或 **浮点数** 类型,且 **不可重复**  
13 - 2. 必须使用连 **接符** 或 **下划线** 将 id 与后续具体名称相连  
14 - 3. 文件只能使用 **.md** 扩展名  
15 -  
16 - 如果未能满足以上条件,将弹出以下错误提示:  
17 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/04-4801dadd.png)  
18 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/04-79e0b528.png)  
19 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/04-0c4d9e7d.png)  
20 - 正确的命名,例如:  
21 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/04-12e1b01c.png)  
22 -  
23 -3. ##### 使用 Markdown 语法编辑您的文档  
24 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/04-b3be9411.png)  
25 -  
26 -## 扩展编辑  
27 -  
28 -1. ##### library 文件夹下 `首页.md` 文档为默认打开时的显示内容  
29 - 您可以适当修改此文档内容以符合您的项目需求  
30 -  
31 -5. ##### `$navigation.md` 导航文件无需人工维护,创建新文件夹或文件时将自动更新,也可以在菜单栏手动刷新:  
32 -  
33 - 菜单栏 -> amWiki文库 -> 手动更新当前文库导航文件  
34 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/04-b7efbbde.png)  
35 -  
36 -6. ##### 如果需要在 Markdown 文档中插入图片,**请先截图**,然后在文档对应位置使用快捷键:`Ctrl + Shift + V`  
37 - 此时,光标位置将多出一段 Markdown 图片代码,例如:  
38 -  
39 - ![](assets/001/04-b7efbbde.png)  
40 -  
41 - 同时,将在项目目录依次创建文件夹 assets、001 (如果不存在的话),以及此文件夹下名称为 04-b7efbbde.png 的图片文件  
42 -  
43 -7. ##### 对于较长文章,可以使用页内目录,依次进行如下操作,或使用快捷键 `Ctrl + D`,即可在光标处插入页内目录。  
44 - 菜单栏 -> amWiki文库 -> 提取h2、h3标题为页内目录  
45 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/04-3eb34e61.png)  
46 - 注意:请按顺序使用h1、h2、h3,且h1仅使用一次。  
47 -  
48 -8. ##### 如果启用了测试模块,想对一篇文档激活接口测试功能,请参照 [使用测试模块测试接口](?file=001-学习amWiki/06-使用测试模块测试接口)  
49 -  
50 -  
51 -## 维护与延伸  
52 -  
53 -1. 本插件升级后,您想更新 `(projectName)/amWiki/` 文件夹下 web 端的工作文件,您只需重新打开 `config.json` 文件,然后在 Atom 菜单上选择 `通过“config.json”创建新文库` 即可。  
54 -这个二次创建操作不会影响您 library 与 assetes 文件夹下的内容。  
55 -  
56 -2. 借助版本管理 SVN、Git、Hg,传输协议FTP/SFTP,文件同步Dropbox、百度云等等工具,便捷实现网络访问。  
library/01-首页/05-学习markdown/01-Markdown快速开始.md deleted
1 -# Markdown 快速开始  
2 -  
3 ->1. [简介](#简介 "简介")  
4 -1. [语法快速入门](#语法快速入门 "语法快速入门")  
5 - 1. [【标题】](#【标题】 "【标题】")  
6 - 1. [【修辞和强调】](#【修辞和强调】 "【修辞和强调】")  
7 - 1. [【删除线】](#【删除线】 "【删除线】")  
8 - 1. [【列表】](#【列表】 "【列表】")  
9 - 1. [【链接】](#【链接】 "【链接】")  
10 - 1. [【图片】](#【图片】 "【图片】")  
11 - 1. [【代码】](#【代码】 "【代码】")  
12 - 1. [【代码段】](#【代码段】 "【代码段】")  
13 - 1. [【表格】](#【表格】 "【表格】")  
14 - 1. [【引用】](#【引用】 "【引用】")  
15 - 1. [【分割线】](#【分割线】 "【分割线】")  
16 - 1. [【换行】](#【换行】 "【换行】")  
17 - 1. [【html】](#【html】 "【html】")  
18 -1. [研究更多 markdown 语法详细细节](#研究更多 markdown 语法详细细节 "研究更多 markdown 语法详细细节")  
19 -  
20 -  
21 -## 简介  
22 -Markdown是为那些需要经常码字或者进行文字排版的、对码字手速和排版顺畅度有要求的人群设计的,他们希望用键盘把文字内容啪啪啪地打出来后就已经排版好了,最好从头到尾都不要使用鼠标。  
23 -这些人包括经常需要写文档的码农、博客写手、网站小编、出版业人士等等。  
24 -Markdown的语法简洁明了、学习容易,得到了许多著名网络平台的支持,例如代码托管平台[Github](https://github.com/)、博客平台[WordPress](https://cn.wordpress.org/)等等。  
25 -  
26 -## 语法快速入门  
27 -  
28 -### <font color=#C71585>【标题】</font>  
29 -在行首插入1到6个#,对应1到6阶标题  
30 - # 这是 H1  
31 - ## 这是 H2  
32 - ### 这是 H3  
33 - #### 这是 H4  
34 - ##### 这是 H5  
35 - ###### 这是 H6  
36 -渲染效果:  
37 -# 这是 H1  
38 -## 这是 H2  
39 -### 这是 H3  
40 -#### 这是 H4  
41 -##### 这是 H5  
42 -###### 这是 H6  
43 -  
44 -### <font color=#C71585>【修辞和强调】</font>  
45 -使用星号和底线来标记需要强调的区段  
46 -  
47 - **加粗**  
48 - __加粗__  
49 - *斜体*  
50 - _斜体_  
51 -  
52 -渲染效果:  
53 -**加粗**  
54 -__加粗__  
55 -*斜体*  
56 -_斜体_  
57 -  
58 -### <font color=#C71585>【删除线】</font>  
59 -  
60 - ~~要删掉的内容~~  
61 -  
62 -渲染效果:  
63 -~~要删掉的内容~~  
64 -  
65 -### <font color=#C71585>【列表】</font>  
66 -**无序列表** 使用星号、加号和减号来做为列表的项目标记  
67 - * Candy.  
68 - * Gum.  
69 - + Booze.  
70 - * Booze. 长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本  
71 - 这里是断行-文本长文本长文本长文本  
72 - 这里是断行-文本长文本长文本长文本  
73 - - Booze.  
74 - + 嵌套  
75 - * 嵌套  
76 -  
77 -渲染效果:  
78 -* Candy.  
79 -* Gum.  
80 -+ Booze.  
81 -* Booze. 长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本长文本  
82 -这里是断行-文本长文本长文本长文本  
83 -这里是断行-文本长文本长文本长文本  
84 -- Booze.  
85 - + 嵌套  
86 - * 嵌套  
87 -  
88 -**有序列表** 则是使用一般的数字接着一个英文句点作为项目标记  
89 - 1. Red  
90 - 50. Green  
91 - 1000. Blue  
92 -  
93 -渲染效果:  
94 -1. Red  
95 -50. Green  
96 -1000. Blue  
97 -  
98 -### <font color=#C71585>【链接】</font>  
99 -在方括号后面用圆括号接上链接  
100 -  
101 - 这是一个[链接显示文本](http://www.baidu.com "链接title文本")  
102 -  
103 -渲染效果:  
104 -这是一个[链接显示文本](http://www.baidu.com "链接title文本")  
105 -  
106 -### <font color=#C71585>【图片】</font>  
107 -图片的语法和链接很像  
108 -  
109 - ![alt文本](amWiki/images/logo.png "Title")  
110 -  
111 -渲染效果:  
112 -![alt文本](amWiki/images/logo.png "Title")  
113 -  
114 -### <font color=#C71585>【代码】</font>  
115 -使用反引号 \` 来标记代码区段  
116 -  
117 - 我是`code`,`<div>division</div>`  
118 -  
119 -渲染效果:  
120 -我是`code`,`<div>division</div>`  
121 -  
122 -### <font color=#C71585>【代码段】</font>  
123 -如果要建立一个已经格式化好的代码区块,只要每行都缩进 4 个空格或是一个 tab 就可以了  
124 -  
125 - var name = 'Candy'  
126 -  
127 -渲染效果:  
128 -  
129 - var name = 'Candy'  
130 -  
131 -### <font color=#C71585>【表格】</font>  
132 -使用竖线分割内容,且同时使用“---”与“:”指定对齐方式  
133 -  
134 - | Header01 | Header02 | Header03  
135 - | -------- | :------: | ---:  
136 - | 默认 | 居中 | 右  
137 -  
138 -渲染效果:  
139 -  
140 -| Header01 | Header02 | Header03  
141 -| -------- | :------: | ---:  
142 -| 默认 | 居中 | 右  
143 -  
144 -### <font color=#C71585>【引用】</font>  
145 -只需要在文本前加入 > 这种尖括号(大于号)即可  
146 -  
147 - >这里是一段引用  
148 -  
149 -渲染效果:  
150 ->这里是一段引用  
151 -  
152 -### <font color=#C71585>【分割线】</font>  
153 -只需要三个 \- 号  
154 -  
155 - ---  
156 -  
157 -渲染效果:  
158 -  
159 ----  
160 -  
161 -### <font color=#C71585>【换行】</font>  
162 -只需要两个以上的空格然后回车  
163 -  
164 - 我是首行  
165 - 我换行了  
166 -  
167 -渲染效果:  
168 -我是首行  
169 -我换行了  
170 -  
171 -### <font color=#C71585>【html】</font>  
172 -可以直接在文档里书写 HTML,不需要额外标注这是 HTML  
173 -  
174 - <div>division</div>  
175 -  
176 -渲染效果:  
177 -<div>division</div>  
178 -  
179 -  
180 -## 研究更多 markdown 语法详细细节  
181 -  
182 -- [创始人 John Gruber 的 Markdown 语法说明](http://daringfireball.net/projects/markdown/syntax)  
183 -- [Markdown 中文版语法说明](http://wowubuntu.com/markdown/)  
library/01-首页/05-学习markdown/02-amWiki与语法高亮.md deleted
1 -# amWiki 与语法高亮  
2 -  
3 -amWiki使用 [highlight.js](https://github.com/isagalaev/highlight.js) 进行预语法高亮渲染,它能对多达一百多种语言、样式提供语法高亮解析  
4 -使用两组每组三个反引号分单独两行将代码包围起来,并在第一组反引号后写上语言类型即可使用语法高亮,例如:  
5 - ```js  
6 - //some js code here  
7 - ```  
8 -  
9 -## javascript / js 代码  
10 -普通代码块效果:  
11 -```  
12 -//发送验证码  
13 -function cd(num) {  
14 - $('#code').val(num + '秒后可重发');  
15 - setTimeout(function() {  
16 - if (num - 1 >= 0) {  
17 - cd(num - 1);  
18 - } else {  
19 - $('#code').removeClass('bg-gray').prop('disabled', false).val('重新发送验证码');  
20 - }  
21 - },  
22 - 1000);  
23 -}  
24 -```  
25 -```  
26 -{  
27 - "state": {  
28 - "code": 10200, //code状态码  
29 - "msg": "ok" //状态描述  
30 - },  
31 - "data": {  
32 - "team_num": 13, //队伍数  
33 - "position": "海珠区新港中路" //位置  
34 - }  
35 -}  
36 -```  
37 -  
38 -添加 `js`、`javascript` 标记后的效果:  
39 -```javascript  
40 -//发送验证码  
41 -function cd(num) {  
42 - $('#code').val(num + '秒后可重发');  
43 - setTimeout(function() {  
44 - if (num - 1 >= 0) {  
45 - cd(num - 1);  
46 - } else {  
47 - $('#code').removeClass('bg-gray').prop('disabled', false).val('重新发送验证码');  
48 - }  
49 - },  
50 - 1000);  
51 -}  
52 -```  
53 -```js  
54 -{  
55 - "state": {  
56 - "code": 10200, //code状态码  
57 - "msg": "ok" //状态描述  
58 - },  
59 - "data": {  
60 - "team_num": 13, //队伍数  
61 - "position": "海珠区新港中路" //位置  
62 - }  
63 -}  
64 -```  
65 -amWiki对javascript代码片段做了再次增强,可以点击代码块右上角按钮隐藏/显示注释  
66 -当注释处于隐藏状态时不会被复制,比较适合模拟返回json数据的接口时直接拷贝(json不允许注释)  
67 -  
68 -## Html 代码  
69 -普通代码段效果:  
70 -```  
71 -<body>  
72 - <div class="loading"><img src="/assets/images/loading.gif"></div>  
73 - <header>some text</header>  
74 - <script type="text/javascript" src="/assets/js/jquery-2.1.4.min.js"></script>  
75 -</body>  
76 -```  
77 -添加 `html` 标记后的效果:  
78 -```html  
79 -<body>  
80 - <div class="loading"><img src="/assets/images/loading.gif"></div>  
81 - <header>some text</header>  
82 - <script type="text/javascript" src="/assets/js/jquery-2.1.4.min.js"></script>  
83 -</body>  
84 -```  
85 -  
86 -## css 代码  
87 -普通代码段效果:  
88 -```  
89 -/* 紧凑 */  
90 -html,body{display:block;width:100%;height:100%;min-width:320px;}  
91 -a,img{-webkit-touch-callout:none;}  
92 -/* 展开 */  
93 -input[type="button"],  
94 -input[type="submit"],  
95 -input[type="reset"],  
96 -textarea {  
97 - -webkit-appearance: none;  
98 -}  
99 -```  
100 -  
101 -添加 `css` 标记后的效果:  
102 -```css  
103 -/* 紧凑 */  
104 -html,body{display:block;width:100%;height:100%;min-width:320px;}  
105 -a,img{-webkit-touch-callout:none;}  
106 -/* 展开 */  
107 -input[type="button"],  
108 -input[type="submit"],  
109 -input[type="reset"],  
110 -textarea {  
111 - -webkit-appearance: none;  
112 -}  
113 -```  
114 -  
115 -## php 代码  
116 -普通代码段效果:  
117 -```  
118 -private function addQuestData($data, $filing_id)  
119 - {  
120 - $quest_num = $data['status'] == 10 ? 1 : 2;  
121 - $where = [  
122 - ['user_filing_id', '=', $filing_id],  
123 - ['project_id', '=', $data['project_id']],  
124 - ['mobile','=', $data['mobile']],  
125 - ['quest_num', '=', $quest_num]  
126 - ];  
127 - }  
128 -```  
129 -添加 `php` 标记后的效果:  
130 -```php  
131 -private function addQuestData($data, $filing_id)  
132 - {  
133 - $quest_num = $data['status'] == 10 ? 1 : 2;  
134 - $where = [  
135 - ['user_filing_id', '=', $filing_id],  
136 - ['project_id', '=', $data['project_id']],  
137 - ['mobile','=', $data['mobile']],  
138 - ['quest_num', '=', $quest_num]  
139 - ];  
140 - }  
141 -```  
142 -  
143 -## sql 代码  
144 -普通代码段效果:  
145 -```  
146 -SELECT Company, OrderNumber FROM Orders ORDER BY Company, OrderNumber  
147 -```  
148 -添加 `sql` 标记后的效果:  
149 -```sql  
150 -SELECT Company, OrderNumber FROM Orders ORDER BY Company, OrderNumber  
151 -```  
152 -  
153 -## java 代码  
154 -普通代码段效果:  
155 -```  
156 -public class Test {  
157 - public static void main(String args[]) {  
158 - int x = 10;  
159 - while( x < 20 ) {  
160 - System.out.print("value of x : " + x );  
161 - x++;  
162 - System.out.print("\n");  
163 - }  
164 - }  
165 -}  
166 -```  
167 -添加 `java` 标记后的效果:  
168 -```java  
169 -public class Test {  
170 - public static void main(String args[]) {  
171 - int x = 10;  
172 - while( x < 20 ) {  
173 - System.out.print("value of x : " + x );  
174 - x++;  
175 - System.out.print("\n");  
176 - }  
177 - }  
178 -}  
179 -```  
library/01-首页/05-学习markdown/03-amWiki与流程图.md deleted
1 -# amWiki 与流程图  
2 -  
3 -amWiki 使用 [flowchart.js](https://github.com/adrai/flowchart.js) 进行流程图渲染,它是一款将文本表达式绘制为简单的 svg 流程图的图形库  
4 -流程图代码块和语法高亮类似,不过类型声明须用 `flow` 关键字  
5 - ```flow  
6 - //your flow text here  
7 - ```  
8 -  
9 -## 流程图样例  
10 -代码:  
11 -  
12 - ```flow  
13 - st=>start: Start :>https://amwiki.xf09.net[blank]  
14 - e=>end: End :>https://amwiki.xf09.net[blank]  
15 - op1=>operation: My Operation  
16 - op2=>operation: Stuff  
17 - sub1=>subroutine: My Subroutine  
18 - cond=>condition: Yes or No? :>https://amwiki.xf09.net[blank]  
19 - c2=>condition: Good idea  
20 - io=>inputoutput: catch something...  
21 -  
22 - st->op1(right)->cond  
23 - cond(yes, right)->c2  
24 - cond(no)->sub1(left)->op1  
25 - c2(yes)->io->e  
26 - c2(no)->op2->e  
27 - ```  
28 -效果:  
29 -  
30 -```flow  
31 -st=>start: Start :>https://amwiki.xf09.net[blank]  
32 -e=>end: End :>https://amwiki.xf09.net[blank]  
33 -op1=>operation: My Operation  
34 -op2=>operation: Stuff  
35 -sub1=>subroutine: My Subroutine  
36 -cond=>condition: Yes or No? :>https://amwiki.xf09.net[blank]  
37 -c2=>condition: Good idea  
38 -io=>inputoutput: catch something...  
39 -  
40 -st->op1(right)->cond  
41 -cond(yes, right)->c2  
42 -cond(no)->sub1(left)->op1  
43 -c2(yes)->io->e  
44 -c2(no)->op2->e  
45 -```  
46 -  
47 -## 流程图语法介绍  
48 -流程图语法分两个部分,一个是声明元素,一个是定义流程  
49 -  
50 -### 声明元素  
51 -语法:  
52 -  
53 - tag=>type: content :>url  
54 -  
55 -1. `tag` 设置元素名称  
56 -2. `=>` 元素定义符  
57 -2. `type:` 设置元素类型,共分6种:  
58 - - **start**:开始,圆角矩形  
59 - - **end**:结束,圆角矩形  
60 - - **operation**:操作/行动方案,普通矩形  
61 - - **subroutine**:子主题/模块,双边线矩形  
62 - - **condition**:条件判断/问题审核,菱形  
63 - - **inputoutput**:输入输出,平行四边形  
64 -3. `content` 设置元素显示内容,中英均可  
65 -4. `:>url` 设置元素连接,可选,后接 [blank] 可以新建窗口打开  
66 -  
67 -提示:注意空格,`=>` 前后都不能接空格;`type:` 后必须接空格;`:>` 是语法标记,中间不能有空格  
68 -  
69 -### 定义流程  
70 -语法:  
71 -  
72 - tag1(branch,direction)->tag2  
73 -  
74 -1. `->` 流程定义符,连接两个元素  
75 -2. `branch` 设置 condition 类型元素的两个分支,有 `yes`/`no` 两个值,其他元素无效  
76 -3. `direction` 定义流程走线方向,有 `left`/`right`/`top`/`bottom` 四个值,所有元素有效,此项配置可选 (ps:此属性容易造成渲染 bug)  
77 -  
78 -小提示:  
79 -- 继续注意空格,`->` 前后都不能有空格  
80 -- 由于 condition 类型有两个分支,我们一般遇到 condition 元素就换行书写,比如:  
81 - st->op1-c2  
82 - c2(yes)->io->e  
83 - c2(no)->op2->e  
library/01-首页/05-学习markdown/05-Atom对Markdown的原生支持.md deleted
1 -# Atom 编辑器对 Markdown 的原生支持  
2 -  
3 -Atom 是 Github 开发的开源跨平台的编辑器,原生支持编辑 Markdown 文档  
4 -  
5 -## 自动完成 Markdown 语法标记  
6 -  
7 -### 代码段效果-code  
8 -输入 `c + Enter`  
9 -  
10 -![](https://amwiki.xf09.net/docs/assets/001.tiny/13-2c594bb9.png)  
11 -  
12 -### 粗体效果-bold  
13 -输入 `b + Enter`  
14 -  
15 -![](https://amwiki.xf09.net/docs/assets/001.tiny/13-8620325c.png)  
16 -  
17 -### 斜体效果-italic  
18 -输入 `i + Enter`  
19 -  
20 -![](https://amwiki.xf09.net/docs/assets/001.tiny/13-0e8a6768.png)  
21 -  
22 -### 链接效果-link  
23 -输入 `l + Enter`  
24 -  
25 -![](https://amwiki.xf09.net/docs/assets/001.tiny/13-5bd90b0f.png)  
26 -  
27 -### 图片效果-img  
28 -输入 `im + Enter`  
29 -  
30 -![](https://amwiki.xf09.net/docs/assets/001.tiny/13-e03a0fc8.png)  
31 -  
32 -### 表格效果-table  
33 -输入 `ta + Enter`  
34 -  
35 -![](https://amwiki.xf09.net/docs/assets/001.tiny/13-fbed2544.png)  
36 -  
37 -<!--  
38 -### todo效果-list  
39 -输入`t + Enter`  
40 -  
41 -![](https://amwiki.xf09.net/docs/assets/001.tiny/13-01a27e09.png)  
42 --->  
43 -  
44 -## 自动补齐二次单词输入  
45 -在第二次输入时,单词可以自动识别与补齐,回车即可完成输入  
46 -  
47 -![](https://amwiki.xf09.net/docs/assets/001.tiny/13-efba45f0.png)  
48 -  
49 -## 内置 Markdown 即时预览插件  
50 -编辑 Markdown 文档时,使用快捷键 `ctrl + shift + m` 即可在窗口右侧打开 Atom 内置的 markdown-preview 即时预览模块  
51 -  
52 -![](https://amwiki.xf09.net/docs/assets/001.tiny/13-75213ccd.png)  
library/01-首页/06-使用测试模块测试接口.md deleted
1 -# 使用测试模块测试接口  
2 -  
3 -让文档与测试一步搞定!  
4 -  
5 -## 激活测试的条件  
6 -##### 当一篇文档中使用了 `“请求地址”`、`“请求类型”`、`“请求参数”` 三个字段作为 `h3标题` 并配套对应内容时,将激活接口测试功能  
7 -![](https://amwiki.xf09.net/docs/assets/001.tiny/06-8a6d91f1.png)  
8 -(详细书写格式请参照[通用API接口文档示例](?file=002-文档示范/001-通用API接口文档示例))  
9 -  
10 -##### 此时文档右上角将出现 `“接口测试”` 按钮,例如:  
11 -![](https://amwiki.xf09.net/docs/assets/001.tiny/04-e412c7fd.png)  
12 -  
13 -## 接口测试的工作原理与步骤  
14 -1. 当测试模块处于打开状态时,每次打开文档都会扫描文档转换 html 后的内容,满足三个 h3 时即开启测试功能  
15 -2. 开启当前文档测试功能后,即会从页面上 **抓取** 符合一定格式的测试内容  
16 -3. 格式化抓取的内容并生成可再次修改的表单  
17 -4. 用户点击发送请求时,先并入全局参数到当前参数列表,再发送请求  
18 -5. 收到请求结果,格式化显示  
19 -  
20 -## 接口测试文档的格式要求  
21 -  
22 -### 请求地址的格式  
23 -请求地址可以使用带 http 与不带 http 两种,下面两种写法都是合适的  
24 -  
25 - /api/customer-flow  
26 - http://localhost/api/customer-flow  
27 -  
28 -注意,不带 http 将自动和当前域名拼合为完整绝对路径,而不是使用相对路径  
29 -  
30 -### 请求类型的格式  
31 -amWiki 暂时只支持 **Get**、**Post**、**Put**、**Delete** 四种普通 ajax 请求,不支持文件上传和其他高级方式通讯  
32 -  
33 -### 请求参数的格式  
34 -- 当接口不需要参数时,直接使用 **“无”** 即可  
35 -![](https://amwiki.xf09.net/docs/assets/001.tiny/06-e030ca95.png)  
36 -- 请求参数列表必须使用 **表格**,且必须按 `参数名`、`类型`、`必填`、`描述`、`默认值`、`参考值` 的栏目顺序建立表格,否则不能正常抓取。  
37 -![](https://amwiki.xf09.net/docs/assets/001.tiny/06-5a7fda87.png)  
38 -其中:  
39 - - 默认值与参考值同属参数的值,但是优先显示默认值,只有当没有默认值时参考值才有效,参考值是为了方便测试之用  
40 - - 参考值一栏可选,不写参考值的整个表格栏位,不会影响测试功能  
41 -  
42 -## 测试功能应用  
43 -  
44 -### 测试面板  
45 -抓取测试内容生成测试表单如下  
46 -![](https://amwiki.xf09.net/docs/assets/001.tiny/06-c0d8d3cb.png)  
47 -  
48 -### 全局参数面板  
49 -全局参数影响所有接口,在全局参数面板可以进行新增、删除全局参数以及临时启用/禁用全局参数等操作  
50 -![](https://amwiki.xf09.net/docs/assets/001.tiny/06-c19f1829.png)  
51 -  
52 -### 返回响应  
53 -成功的响应:  
54 -![](https://amwiki.xf09.net/docs/assets/001.tiny/06-6f851b27.png)  
55 -失败的响应:  
56 -![](https://amwiki.xf09.net/docs/assets/001.tiny/06-bf211990.png)  
57 -  
58 -## 测试模块的问题  
59 -- 测试模只能请求同域接口,不能跨域。 (跨域解决方案请参考[amWiki转接到任意域名进行接口测试](?file=001-学习amWiki/30-amWiki转接到任意域名进行接口测试))  
60 -- 如果接口需要登录权限,请先登录您自己的系统。  
library/01-首页/07-amWiki转接到任意域名进行接口测试.md deleted
1 -# amWiki 转接到任意域名进行接口测试  
2 -  
3 -我们分两种情况进行文档转接,一种是我们有域名服务器操作权限,一种是没有  
4 -  
5 -## 有域名服务器操作权限的转接  
6 -如果我们有域名服务器操作权限,那要把其他域名下的文档转接到当前域名下,其实很简单,就是一个 **反向代理** 的过程  
7 -  
8 -以 nginx 为例,将地址 https://amwiki.xf09.net/docs/ 下所有文档转接到任意域名(_无需https_) /wiki 路径下  
9 -```nginx  
10 -server {  
11 - listen 81;  
12 - server_name abc123.com;  
13 - location /wiki {  
14 - proxy_pass https://amwiki.xf09.net/docs/;  
15 - proxy_redirect off;  
16 - #proxy_set_header Host $host;  
17 - proxy_set_header X-Real-IP $remote_addr;  
18 - proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
19 - proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;  
20 - proxy_max_temp_file_size 0k;  
21 - proxy_connect_timeout 90;  
22 - proxy_send_timeout 90;  
23 - proxy_read_timeout 90;  
24 - proxy_buffer_size 4k;  
25 - proxy_buffers 4 32k;  
26 - proxy_busy_buffers_size 64k;  
27 - proxy_temp_file_write_size 64k;  
28 - }  
29 - # other settings ...  
30 -}  
31 -```  
32 -  
33 -## 无域名服务器操作权限  
34 -此时,如果想要将我们的文档转接到对应域名上去,需要利用抓包工具 Fiddler 进行 **请求代理**  
35 -(_请下载安装抓包工具 [Fiddler](http://www.telerik.com/fiddler),并了解 AutoResponder 面板的使用_)  
36 -  
37 -由于 https 特殊性,我们分两种情况来讨论:  
38 -  
39 -### http 请求代理  
40 -当原域名基于 http 通信时,由于 http 请求是一种很开放的通信,我们可以直接用 fiddler 非常简单的进行转接  
41 -  
42 -比如,我们继续把地址 https://amwiki.xf09.net/docs/ 下所有文档转接到任意域名 /wiki 路径下  
43 -只需要如下配置 AutoResponder:  
44 -  
45 -![](https://amwiki.xf09.net/docs/assets/001.tiny/07-c1ef9812.png)  
46 -规则代码如下:  
47 -  
48 - regex:.+abc123\.com\/wiki\/(.+)$  
49 - https://amwiki.xf09.net/docs/$1  
50 -  
51 -第一行代码为请求匹配,其中 `regex:` 表示按正则表达式进行匹配,`.+abc123\.com\/wiki\/` 表示需要代理的路径,`(.+)$` (和第二行配合)表示转接后续的路径,即将后续路径替换到第二行代码中的 `$1`  
52 -  
53 -| | 转接地址 | 实际请求地址 |  
54 -| : ---| :--- | :--- |  
55 -| 例1 | http://abc123.com/wiki/index.html | https://amwiki.xf09.net/docs/index.html |  
56 -| 例2 | http://abc123.com/wiki/amWiki/js/amWiki.js | https://amwiki.xf09.net/docs/amWiki/js/amWiki.js |  
57 -  
58 -### https 请求代理  
59 -当原域名基于 https 通讯是,我们需要更多的操作才能使用代理 (Fiddler 抓包 https 的原理,有兴趣可自行知乎一下)  
60 -  
61 -- **第一步,开启 https 解码**  
62 - Tools -> Fiddler Options -> HTTPS -> 依次勾选如下  
63 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/07-ea6ad78e.png)  
64 -- **第二步,是安装 Fiddler 根证书**  
65 - 打开 http://localhost:8888/ 下载Fiddler 根证书并安装  
66 - ![](https://amwiki.xf09.net/docs/assets/001.tiny/07-c59334fc.png)  
67 -- **第三步,按照 http 的方式进行代理**  
68 - 例如,我们转接到百度域名的一个路径下  
69 -  
70 - regex:.+www\.baidu\.com\/wiki\/(.+)$  
71 - https://amwiki.xf09.net/docs/$1  
72 -  
73 - 此时,我们打开 https://www.baidu.com/wiki/index.html 会发现,不再是“很抱歉,您要访问的页面不存在!”了  
library/04-企业云使用说明书/001-企业云平台用户使用说明书-(1).md renamed to library/02-企业云使用说明书/001-企业云平台用户使用说明书.md
No preview for this file type
library/02-版本记录/001-通用API接口文档示例.md deleted
1 -# 客户日志流水接口示例  
2 ->维护人员:**Tevin**  
3 ->创建时间:2016-04-06  
4 -  
5 -## 接口简介  
6 -实时查询客户各种操作(例如登录,拓客等)的流水日志  
7 -  
8 -## 接口详情  
9 -  
10 -### 请求地址  
11 -/api/customer-flow  
12 -  
13 -### 请求类型  
14 -GET  
15 -  
16 -### 请求参数  
17 -| 参数名 | 类型 | 必填 | 描述 | 默认值 | 参考值 |  
18 -| --- | :---: | :---: | --- | --- | --- |  
19 -| customer_id | number | 是 | 客户id | - | 132 |  
20 -| type | number | 否 | 客户类型,0所有、1扩展、2报备、3成交 | - | 1 |  
21 -  
22 -### 返回正确JSON示例  
23 -```javascript  
24 -{  
25 - "state": {  
26 - "code": 10200,  
27 - "msg": "ok"  
28 - },  
29 - "data": {  
30 - "id": 307, //流水id  
31 - "real_name": "Tevin", //用户名称  
32 - "mobile": "暂无", //用户手机  
33 - "origin": "暂无", //用户来源  
34 - "created_at": "2016-04-04 20:00:00", //加入时间  
35 - "last_login": "2016-05-22 15:30:21", //最后登录时间  
36 - "log": [] //日志列表  
37 - }  
38 -}  
39 -```  
40 -### 返回错误JSON示例  
41 -```javascript  
42 -{  
43 - "state": {  
44 - "code": 10500  
45 - "msg": "服务器未知报错"  
46 - }  
47 -}  
48 -```  
49 -  
50 -### 备注说明  
51 -无  
52 -  
53 -### 修改日志  
54 -- 【2016-05-22】  
55 - 新增了last_login最后登录时间字段  
library/02-版本记录/002-超长文档页内目录示例.md deleted
1 -# 微信JS-SDK说明文档(超长文档页内目录示例)  
2 -  
3 ->1. [概述](#概述 "概述")  
4 - 1. [JSSDK使用步骤](#JSSDK使用步骤 "JSSDK使用步骤")  
5 - 1. [接口调用说明](#接口调用说明 "接口调用说明")  
6 -1. [基础接口](#基础接口 "基础接口")  
7 - 1. [判断当前客户端版本是否支持指定JS接口](#判断当前客户端版本是否支持指定JS接口 "判断当前客户端版本是否支持指定JS接口")  
8 - 1. [分享接口](#分享接口 "分享接口")  
9 - 1. [获取“分享到朋友圈”按钮点击状态及自定义分享内容接口](#获取“分享到朋友圈”按钮点击状态及自定义分享内容接口 "获取“分享到朋友圈”按钮点击状态及自定义分享内容接口")  
10 - 1. [获取“分享给朋友”按钮点击状态及自定义分享内容接口](#获取“分享给朋友”按钮点击状态及自定义分享内容接口 "获取“分享给朋友”按钮点击状态及自定义分享内容接口")  
11 - 1. [获取“分享到QQ”按钮点击状态及自定义分享内容接口](#获取“分享到QQ”按钮点击状态及自定义分享内容接口 "获取“分享到QQ”按钮点击状态及自定义分享内容接口")  
12 - 1. [获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口](#获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口 "获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口")  
13 - 1. [获取“分享到QQ空间”按钮点击状态及自定义分享内容接口](#获取“分享到QQ空间”按钮点击状态及自定义分享内容接口 "获取“分享到QQ空间”按钮点击状态及自定义分享内容接口")  
14 -1. [图像接口](#图像接口 "图像接口")  
15 - 1. [拍照或从手机相册中选图接口](#拍照或从手机相册中选图接口 "拍照或从手机相册中选图接口")  
16 - 1. [预览图片接口](#预览图片接口 "预览图片接口")  
17 - 1. [上传图片接口](#上传图片接口 "上传图片接口")  
18 - 1. [下载图片接口](#下载图片接口 "下载图片接口")  
19 -1. [音频接口](#音频接口 "音频接口")  
20 - 1. [开始录音接口](#开始录音接口 "开始录音接口")  
21 - 1. [停止录音接口](#停止录音接口 "停止录音接口")  
22 - 1. [监听录音自动停止接口](#监听录音自动停止接口 "监听录音自动停止接口")  
23 - 1. [播放语音接口](#播放语音接口 "播放语音接口")  
24 - 1. [暂停播放接口](#暂停播放接口 "暂停播放接口")  
25 - 1. [停止播放接口](#停止播放接口 "停止播放接口")  
26 - 1. [监听语音播放完毕接口](#监听语音播放完毕接口 "监听语音播放完毕接口")  
27 - 1. [上传语音接口](#上传语音接口 "上传语音接口")  
28 - 1. [下载语音接口](#下载语音接口 "下载语音接口")  
29 -1. [智能接口](#智能接口 "智能接口")  
30 - 1. [识别音频并返回识别结果接口](#识别音频并返回识别结果接口 "识别音频并返回识别结果接口")  
31 -1. [设备信息](#设备信息 "设备信息")  
32 - 1. [获取网络状态接口](#获取网络状态接口 "获取网络状态接口")  
33 -1. [地理位置](#地理位置 "地理位置")  
34 - 1. [使用微信内置地图查看位置接口](#使用微信内置地图查看位置接口 "使用微信内置地图查看位置接口")  
35 - 1. [获取地理位置接口](#获取地理位置接口 "获取地理位置接口")  
36 -1. [摇一摇周边](#摇一摇周边 "摇一摇周边")  
37 - 1. [开启查找周边ibeacon设备接口](#开启查找周边ibeacon设备接口 "开启查找周边ibeacon设备接口")  
38 - 1. [关闭查找周边ibeacon设备接口](#关闭查找周边ibeacon设备接口 "关闭查找周边ibeacon设备接口")  
39 - 1. [监听周边ibeacon设备接口](#监听周边ibeacon设备接口 "监听周边ibeacon设备接口")  
40 -1. [界面操作](#界面操作 "界面操作")  
41 - 1. [隐藏右上角菜单接口](#隐藏右上角菜单接口 "隐藏右上角菜单接口")  
42 - 1. [显示右上角菜单接口](#显示右上角菜单接口 "显示右上角菜单接口")  
43 - 1. [关闭当前网页窗口接口](#关闭当前网页窗口接口 "关闭当前网页窗口接口")  
44 - 1. [批量隐藏功能按钮接口](#批量隐藏功能按钮接口 "批量隐藏功能按钮接口")  
45 - 1. [批量显示功能按钮接口](#批量显示功能按钮接口 "批量显示功能按钮接口")  
46 - 1. [隐藏所有非基础按钮接口](#隐藏所有非基础按钮接口 "隐藏所有非基础按钮接口")  
47 - 1. [显示所有功能按钮接口](#显示所有功能按钮接口 "显示所有功能按钮接口")  
48 -1. [微信扫一扫](#微信扫一扫 "微信扫一扫")  
49 - 1. [调起微信扫一扫接口](#调起微信扫一扫接口 "调起微信扫一扫接口")  
50 -1. [微信小店](#微信小店 "微信小店")  
51 - 1. [跳转微信商品页接口](#跳转微信商品页接口 "跳转微信商品页接口")  
52 -1. [微信卡券](#微信卡券 "微信卡券")  
53 - 1. [获取api_ticket](#获取api_ticket "获取api_ticket")  
54 - 1. [拉取适用卡券列表并获取用户选择信息](#拉取适用卡券列表并获取用户选择信息 "拉取适用卡券列表并获取用户选择信息")  
55 - 1. [批量添加卡券接口](#批量添加卡券接口 "批量添加卡券接口")  
56 - 1. [查看微信卡包中的卡券接口](#查看微信卡包中的卡券接口 "查看微信卡包中的卡券接口")  
57 - 1. [核销后再次赠送卡券接口](#核销后再次赠送卡券接口 "核销后再次赠送卡券接口")  
58 -1. [微信支付](#微信支付 "微信支付")  
59 - 1. [发起一个微信支付请求](#发起一个微信支付请求 "发起一个微信支付请求")  
60 -  
61 -  
62 -## 概述  
63 -  
64 -微信JS-SDK是微信公众平台面向网页开发者提供的基于微信内的网页开发工具包。  
65 -  
66 -通过使用微信JS-SDK,网页开发者可借助微信高效地使用拍照、选图、语音、位置等手机系统的能力,同时可以直接使用微信分享、扫一扫、卡券、支付等微信特有的能力,为微信用户提供更优质的网页体验。  
67 -  
68 -此文档面向网页开发者介绍微信JS-SDK如何使用及相关注意事项。  
69 -  
70 -### JSSDK使用步骤  
71 -  
72 -#### 步骤一:绑定域名  
73 -  
74 -先登录微信公众平台进入“公众号设置”的“功能设置”里填写“JS接口安全域名”。**如果你使用了支付类接口,请确保支付目录在该安全域名下,否则将无法完成支付。**  
75 -  
76 -备注:登录后可在“开发者中心”查看对应的接口权限。  
77 -  
78 -#### 步骤二:引入JS文件  
79 -  
80 -在需要调用JS接口的页面引入如下JS文件,(支持https):  
81 -[http://res.wx.qq.com/open/js/jweixin-1.0.0.js](http://res.wx.qq.com/open/js/jweixin-1.0.0.js)  
82 -  
83 -**请注意,如果你的页面启用了https,务必引入** [https://res.wx.qq.com/open/js/jweixin-1.0.0.js](https://res.wx.qq.com/open/js/jweixin-1.0.0.js) ,**否则将无法在iOS9.0以上系统中成功使用JSSDK**  
84 -  
85 -如需使用摇一摇周边功能,请引入 jweixin-1.1.0.js  
86 -  
87 -备注:支持使用 AMD/CMD 标准模块加载方法加载  
88 -  
89 -#### 步骤三:通过config接口注入权限验证配置  
90 -  
91 -**所有需要使用JS-SDK的页面必须先注入配置信息,否则将无法调用**(同一个url仅需调用一次,对于变化url的SPA的web app可在每次url变化时进行调用,目前Android微信客户端不支持pushState的H5新特性,所以使用pushState来实现web app的页面会导致签名失败,此问题会在Android6.2中修复)。  
92 -  
93 -```javascript  
94 -wx.config({  
95 - debug: true, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。  
96 - appId: '', // 必填,公众号的唯一标识  
97 - timestamp: , // 必填,生成签名的时间戳  
98 - nonceStr: '', // 必填,生成签名的随机串  
99 - signature: '',// 必填,签名,见附录1  
100 - jsApiList: [] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2  
101 -});  
102 -```  
103 -  
104 -#### 步骤四:通过ready接口处理成功验证  
105 -```javascript  
106 -wx.ready(function(){  
107 - // config信息验证后会执行ready方法,所有接口调用都必须在config接口获得结果之后,config是一个客户端的异步操作,所以如果需要在页面加载时就调用相关接口,则须把相关接口放在ready函数中调用来确保正确执行。对于用户触发时才调用的接口,则可以直接调用,不需要放在ready函数中。  
108 -});  
109 -```  
110 -  
111 -#### 步骤五:通过error接口处理失败验证  
112 -```javascript  
113 -wx.error(function(res){  
114 - // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。  
115 -});  
116 -```  
117 -### 接口调用说明  
118 -  
119 -所有接口通过wx对象(也可使用jWeixin对象)来调用,参数是一个对象,除了每个接口本身需要传的参数之外,还有以下通用参数:  
120 -  
121 -1. success:接口调用成功时执行的回调函数。  
122 -1. fail:接口调用失败时执行的回调函数。  
123 -1. complete:接口调用完成时执行的回调函数,无论成功或失败都会执行。  
124 -1. cancel:用户点击取消时的回调函数,仅部分有用户取消操作的api才会用到。  
125 -1. trigger: 监听Menu中的按钮点击时触发的方法,该方法仅支持Menu中的相关接口。  
126 -  
127 -备注:**不要尝试在trigger中使用ajax异步请求修改本次分享的内容,因为客户端分享操作是一个同步操作,这时候使用ajax的回包会还没有返回。**  
128 -  
129 -以上几个函数都带有一个参数,类型为对象,其中除了每个接口本身返回的数据之外,还有一个通用属性errMsg,其值格式如下:  
130 -  
131 -1. 调用成功时:"xxx:ok" ,其中xxx为调用的接口名  
132 -1. 用户取消时:"xxx:cancel",其中xxx为调用的接口名  
133 -1. 调用失败时:其值为具体错误信息  
134 -  
135 -## 基础接口  
136 -  
137 -### 判断当前客户端版本是否支持指定JS接口  
138 -  
139 -```javascript  
140 -wx.checkJsApi({  
141 - jsApiList: ['chooseImage'], // 需要检测的JS接口列表,所有JS接口列表见附录2,  
142 - success: function(res) {  
143 - // 以键值对的形式返回,可用的api值true,不可用为false  
144 - // 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}  
145 - }  
146 -});  
147 -```  
148 -备注:checkJsApi接口是客户端6.0.2新引入的一个预留接口,第一期开放的接口均可不使用checkJsApi来检测。  
149 -  
150 -### 分享接口  
151 -  
152 -请注意不要有诱导分享等违规行为,对于诱导分享行为将永久回收公众号接口权限,详细规则请查看:朋友圈管理常见问题。  
153 -  
154 -### 获取“分享到朋友圈”按钮点击状态及自定义分享内容接口  
155 -  
156 -```javascript  
157 -wx.onMenuShareTimeline({  
158 - title: '', // 分享标题  
159 - link: '', // 分享链接  
160 - imgUrl: '', // 分享图标  
161 - success: function () {  
162 - // 用户确认分享后执行的回调函数  
163 - },  
164 - cancel: function () {  
165 - // 用户取消分享后执行的回调函数  
166 - }  
167 -});  
168 -```  
169 -  
170 -### 获取“分享给朋友”按钮点击状态及自定义分享内容接口  
171 -```javascript  
172 -wx.onMenuShareAppMessage({  
173 - title: '', // 分享标题  
174 - desc: '', // 分享描述  
175 - link: '', // 分享链接  
176 - imgUrl: '', // 分享图标  
177 - type: '', // 分享类型,music、video或link,不填默认为link  
178 - dataUrl: '', // 如果type是music或video,则要提供数据链接,默认为空  
179 - success: function () {  
180 - // 用户确认分享后执行的回调函数  
181 - },  
182 - cancel: function () {  
183 - // 用户取消分享后执行的回调函数  
184 - }  
185 -});  
186 -```  
187 -  
188 -### 获取“分享到QQ”按钮点击状态及自定义分享内容接口  
189 -```javascript  
190 -wx.onMenuShareQQ({  
191 - title: '', // 分享标题  
192 - desc: '', // 分享描述  
193 - link: '', // 分享链接  
194 - imgUrl: '', // 分享图标  
195 - success: function () {  
196 - // 用户确认分享后执行的回调函数  
197 - },  
198 - cancel: function () {  
199 - // 用户取消分享后执行的回调函数  
200 - }  
201 -});  
202 -```  
203 -  
204 -### 获取“分享到腾讯微博”按钮点击状态及自定义分享内容接口  
205 -```javascript  
206 -wx.onMenuShareWeibo({  
207 - title: '', // 分享标题  
208 - desc: '', // 分享描述  
209 - link: '', // 分享链接  
210 - imgUrl: '', // 分享图标  
211 - success: function () {  
212 - // 用户确认分享后执行的回调函数  
213 - },  
214 - cancel: function () {  
215 - // 用户取消分享后执行的回调函数  
216 - }  
217 -});  
218 -```  
219 -  
220 -### 获取“分享到QQ空间”按钮点击状态及自定义分享内容接口  
221 -```javascript  
222 -wx.onMenuShareQZone({  
223 - title: '', // 分享标题  
224 - desc: '', // 分享描述  
225 - link: '', // 分享链接  
226 - imgUrl: '', // 分享图标  
227 - success: function () {  
228 - // 用户确认分享后执行的回调函数  
229 - },  
230 - cancel: function () {  
231 - // 用户取消分享后执行的回调函数  
232 - }  
233 -});  
234 -```  
235 -  
236 -## 图像接口  
237 -  
238 -### 拍照或从手机相册中选图接口  
239 -```javascript  
240 -wx.chooseImage({  
241 - count: 1, // 默认9  
242 - sizeType: ['original', 'compressed'], // 可以指定是原图还是压缩图,默认二者都有  
243 - sourceType: ['album', 'camera'], // 可以指定来源是相册还是相机,默认二者都有  
244 - success: function (res) {  
245 - var localIds = res.localIds; // 返回选定照片的本地ID列表,localId可以作为img标签的src属性显示图片  
246 - }  
247 -});  
248 -```  
249 -  
250 -### 预览图片接口  
251 -```javascript  
252 -wx.previewImage({  
253 - current: '', // 当前显示图片的http链接  
254 - urls: [] // 需要预览的图片http链接列表  
255 -});  
256 -```  
257 -  
258 -### 上传图片接口  
259 -```javascript  
260 -wx.uploadImage({  
261 - localId: '', // 需要上传的图片的本地ID,由chooseImage接口获得  
262 - isShowProgressTips: 1, // 默认为1,显示进度提示  
263 - success: function (res) {  
264 - var serverId = res.serverId; // 返回图片的服务器端ID  
265 - }  
266 -});  
267 -```  
268 -  
269 -备注:上传图片有效期3天,可用微信多媒体接口下载图片到自己的服务器,此处获得的 serverId 即 media_id,参考文档 ../12/58bfcfabbd501c7cd77c19bd9cfa8354.html 目前多媒体文件下载接口的频率限制为10000次/天,如需要调高频率,请邮件weixin-open@qq.com,邮件主题为【申请多媒体接口调用量】,请对你的项目进行简单描述,附上产品体验链接,并对用户量和使用量进行说明。  
270 -  
271 -### 下载图片接口  
272 -```javascript  
273 -wx.downloadImage({  
274 - serverId: '', // 需要下载的图片的服务器端ID,由uploadImage接口获得  
275 - isShowProgressTips: 1, // 默认为1,显示进度提示  
276 - success: function (res) {  
277 - var localId = res.localId; // 返回图片下载后的本地ID  
278 - }  
279 -});  
280 -```  
281 -  
282 -## 音频接口  
283 -  
284 -### 开始录音接口  
285 -```javascript  
286 -wx.startRecord();  
287 -```  
288 -  
289 -### 停止录音接口  
290 -```javascript  
291 -wx.stopRecord({  
292 - success: function (res) {  
293 - var localId = res.localId;  
294 - }  
295 -});  
296 -```  
297 -  
298 -### 监听录音自动停止接口  
299 -```javascript  
300 -wx.onVoiceRecordEnd({  
301 - // 录音时间超过一分钟没有停止的时候会执行 complete 回调  
302 - complete: function (res) {  
303 - var localId = res.localId;  
304 - }  
305 -});  
306 -```  
307 -  
308 -### 播放语音接口  
309 -```javascript  
310 -wx.playVoice({  
311 - localId: '' // 需要播放的音频的本地ID,由stopRecord接口获得  
312 -});  
313 -```  
314 -  
315 -### 暂停播放接口  
316 -```javascript  
317 -wx.pauseVoice({  
318 - localId: '' // 需要暂停的音频的本地ID,由stopRecord接口获得  
319 -});  
320 -```  
321 -  
322 -### 停止播放接口  
323 -```javascript  
324 -wx.stopVoice({  
325 - localId: '' // 需要停止的音频的本地ID,由stopRecord接口获得  
326 -});  
327 -```  
328 -  
329 -### 监听语音播放完毕接口  
330 -```javascript  
331 -wx.onVoicePlayEnd({  
332 - success: function (res) {  
333 - var localId = res.localId; // 返回音频的本地ID  
334 - }  
335 -});  
336 -```  
337 -  
338 -### 上传语音接口  
339 -```javascript  
340 -wx.uploadVoice({  
341 - localId: '', // 需要上传的音频的本地ID,由stopRecord接口获得  
342 - isShowProgressTips: 1, // 默认为1,显示进度提示  
343 - success: function (res) {  
344 - var serverId = res.serverId; // 返回音频的服务器端ID  
345 - }  
346 -});  
347 -```  
348 -  
349 -备注:上传语音有效期3天,可用微信多媒体接口下载语音到自己的服务器,此处获得的 serverId 即 media_id,参考文档 ../12/58bfcfabbd501c7cd77c19bd9cfa8354.html 目前多媒体文件下载接口的频率限制为10000次/天,如需要调高频率,请邮件weixin-open@qq.com,邮件主题为【申请多媒体接口调用量】,请对你的项目进行简单描述,附上产品体验链接,并对用户量和使用量进行说明。  
350 -  
351 -### 下载语音接口  
352 -```javascript  
353 -wx.downloadVoice({  
354 - serverId: '', // 需要下载的音频的服务器端ID,由uploadVoice接口获得  
355 - isShowProgressTips: 1, // 默认为1,显示进度提示  
356 - success: function (res) {  
357 - var localId = res.localId; // 返回音频的本地ID  
358 - }  
359 -});  
360 -```  
361 -  
362 -## 智能接口  
363 -  
364 -### 识别音频并返回识别结果接口  
365 -```javascript  
366 -wx.translateVoice({  
367 - localId: '', // 需要识别的音频的本地Id,由录音相关接口获得  
368 - isShowProgressTips: 1, // 默认为1,显示进度提示  
369 - success: function (res) {  
370 - alert(res.translateResult); // 语音识别的结果  
371 - }  
372 -});  
373 -```  
374 -  
375 -## 设备信息  
376 -  
377 -### 获取网络状态接口  
378 -```javascript  
379 -wx.getNetworkType({  
380 - success: function (res) {  
381 - var networkType = res.networkType; // 返回网络类型2g,3g,4g,wifi  
382 - }  
383 -});  
384 -```  
385 -  
386 -## 地理位置  
387 -  
388 -### 使用微信内置地图查看位置接口  
389 -```javascript  
390 -wx.openLocation({  
391 - latitude: 0, // 纬度,浮点数,范围为90 ~ -90  
392 - longitude: 0, // 经度,浮点数,范围为180 ~ -180。  
393 - name: '', // 位置名  
394 - address: '', // 地址详情说明  
395 - scale: 1, // 地图缩放级别,整形值,范围从1~28。默认为最大  
396 - infoUrl: '' // 在查看位置界面底部显示的超链接,可点击跳转  
397 -});  
398 -```  
399 -  
400 -### 获取地理位置接口  
401 -```javascript  
402 -wx.getLocation({  
403 - type: 'wgs84', // 默认为wgs84的gps坐标,如果要返回直接给openLocation用的火星坐标,可传入'gcj02'  
404 - success: function (res) {  
405 - var latitude = res.latitude; // 纬度,浮点数,范围为90 ~ -90  
406 - var longitude = res.longitude; // 经度,浮点数,范围为180 ~ -180。  
407 - var speed = res.speed; // 速度,以米/每秒计  
408 - var accuracy = res.accuracy; // 位置精度  
409 - }  
410 -});  
411 -```  
412 -  
413 -## 摇一摇周边  
414 -  
415 -### 开启查找周边ibeacon设备接口  
416 -```javascript  
417 -wx.startSearchBeacons({  
418 - ticket: "", // 摇周边的业务ticket, 系统自动添加在摇出来的页面链接后面  
419 - complete: function(argv) {  
420 - // 开启查找完成后的回调函数  
421 - }  
422 -});  
423 -```  
424 -  
425 -备注:如需接入摇一摇周边功能,请参考:申请开通摇一摇周边  
426 -  
427 -### 关闭查找周边ibeacon设备接口  
428 -```javascript  
429 -wx.stopSearchBeacons({  
430 - complete:function(res){  
431 - //关闭查找完成后的回调函数  
432 - }  
433 -});  
434 -```  
435 -  
436 -### 监听周边ibeacon设备接口  
437 -```javascript  
438 -wx.onSearchBeacons({  
439 - complete:function(argv){  
440 - //回调函数,可以数组形式取得该商家注册的在周边的相关设备列表  
441 - }  
442 -});  
443 -```  
444 -  
445 -备注:上述摇一摇周边接口使用注意事项及更多返回结果说明,请参考:摇一摇周边获取设备信息  
446 -  
447 -## 界面操作  
448 -  
449 -### 隐藏右上角菜单接口  
450 -```javascript  
451 -wx.hideOptionMenu();  
452 -```  
453 -  
454 -### 显示右上角菜单接口  
455 -```javascript  
456 -wx.showOptionMenu();  
457 -```  
458 -  
459 -### 关闭当前网页窗口接口  
460 -```javascript  
461 -wx.closeWindow();  
462 -```  
463 -  
464 -### 批量隐藏功能按钮接口  
465 -```javascript  
466 -wx.hideMenuItems({  
467 - menuList: [] // 要隐藏的菜单项,只能隐藏“传播类”和“保护类”按钮,所有menu项见附录3  
468 -});  
469 -```  
470 -  
471 -### 批量显示功能按钮接口  
472 -```javascript  
473 -wx.showMenuItems({  
474 - menuList: [] // 要显示的菜单项,所有menu项见附录3  
475 -});  
476 -```  
477 -  
478 -### 隐藏所有非基础按钮接口  
479 -```javascript  
480 -wx.hideAllNonBaseMenuItem();  
481 -// “基本类”按钮详见附录3  
482 -```  
483 -  
484 -### 显示所有功能按钮接口  
485 -```javascript  
486 -wx.showAllNonBaseMenuItem();  
487 -```  
488 -  
489 -## 微信扫一扫  
490 -  
491 -### 调起微信扫一扫接口  
492 -```javascript  
493 -wx.scanQRCode({  
494 - needResult: 0, // 默认为0,扫描结果由微信处理,1则直接返回扫描结果,  
495 - scanType: ["qrCode","barCode"], // 可以指定扫二维码还是一维码,默认二者都有  
496 - success: function (res) {  
497 - var result = res.resultStr; // 当needResult 为 1 时,扫码返回的结果  
498 - }  
499 -});  
500 -```  
501 -  
502 -## 微信小店  
503 -  
504 -### 跳转微信商品页接口  
505 -```javascript  
506 -wx.openProductSpecificView({  
507 - productId: '', // 商品id  
508 - viewType: '' // 0.默认值,普通商品详情页1.扫一扫商品详情页2.小店商品详情页  
509 -});  
510 -```  
511 -  
512 -## 微信卡券  
513 -  
514 -微信卡券接口中使用的签名凭证api_ticket,与步骤三中config使用的签名凭证jsapi_ticket不同,开发者在调用微信卡券JS-SDK的过程中需依次完成两次不同的签名,并确保凭证的缓存。  
515 -  
516 -### 获取api_ticket  
517 -  
518 -api_ticket 是用于调用微信卡券JS API的临时票据,有效期为7200 秒,通过access_token 来获取。  
519 -  
520 -开发者注意事项:  
521 -  
522 -1. **此用于卡券接口签名的api_ticket与步骤三中通过config接口注入权限验证配置使用的jsapi_ticket不同。**  
523 -2. 由于获取api_ticket 的api 调用次数非常有限,频繁刷新api_ticket 会导致api调用受限,影响自身业务,开发者需在自己的服务存储与更新api_ticket。  
524 -  
525 -#### 接口调用请求说明  
526 -  
527 - http请求方式: GET  
528 - https://api.weixin.qq.com/cgi-bin/ticket/getticket?access_token=ACCESS_TOKEN&type=wx_card  
529 -  
530 -#### 参数说明  
531 -| 参数 | 是否必须 | 说明 |  
532 -| --- | --- | --- |  
533 -| access_token | 是 | 调用接口凭证 |  
534 -  
535 -#### 返回数据  
536 -  
537 -数据示例:  
538 -```JSON  
539 -{  
540 - "errcode": 0,  
541 - "errmsg": "ok",  
542 - "ticket": "bxLdikRXVbTPdHSM05e5u5sUoXNKdvsdshFKA",  
543 - "expires_in": 7200  
544 -}  
545 -```  
546 -| 参数名 | 描述  
547 -| --- | ---  
548 -| errcode | 错误码  
549 -| errmsg | 错误信息  
550 -| ticket | api_ticket,卡券接口中签名所需凭证  
551 -| expires_in | 有效时间  
552 -  
553 -### 拉取适用卡券列表并获取用户选择信息  
554 -```javascript  
555 -wx.chooseCard({  
556 - shopId: '', // 门店Id  
557 - cardType: '', // 卡券类型  
558 - cardId: '', // 卡券Id  
559 - timestamp: 0, // 卡券签名时间戳  
560 - nonceStr: '', // 卡券签名随机串  
561 - signType: '', // 签名方式,默认'SHA1'  
562 - cardSign: '', // 卡券签名  
563 - success: function (res) {  
564 - var cardList= res.cardList; // 用户选中的卡券列表信息  
565 - }  
566 -});  
567 -```  
568 -  
569 -|参数名 |必填 |类型 |示例值 |描述  
570 -| --- | --- | --- | --- | ---  
571 -|shopId |否 |string(24) |1234 |门店ID。shopID用于筛选出拉起带有指定location_list(shopID)的卡券列表,非必填。  
572 -|cardType |否 |string(24) |GROUPON |卡券类型,用于拉起指定卡券类型的卡券列表。当cardType为空时,默认拉起所有卡券的列表,非必填。  
573 -|cardId |否 |string(32) |p1Pj9jr90_SQRaVqYI239Ka1erk |卡券ID,用于拉起指定cardId的卡券列表,当cardId为空时,默认拉起所有卡券的列表,非必填。  
574 -|timestamp |是 |string(32) |14300000000 |时间戳。  
575 -|nonceStr |是 |string(32) |sduhi123 |随机字符串。  
576 -|signType |是 |string(32) |SHA1 |签名方式,目前仅支持SHA1  
577 -|cardSign |是 |string(64) |abcsdijcous123 |签名。  
578 -  
579 -cardSign详见附录4。开发者特别注意:签名错误会导致拉取卡券列表异常为空,请仔细检查参与签名的参数有效性。  
580 -  
581 -**特别提醒**  
582 -  
583 -拉取列表仅与用户本地卡券有关,拉起列表异常为空的情况通常有三种:签名错误、时间戳无效、筛选机制有误。请开发者依次排查定位原因。  
584 -  
585 -### 批量添加卡券接口  
586 -```javascript  
587 -wx.addCard({  
588 - cardList: [{  
589 - cardId: '',  
590 - cardExt: ''  
591 - }], // 需要添加的卡券列表  
592 - success: function (res) {  
593 - var cardList = res.cardList; // 添加的卡券列表信息  
594 - }  
595 -});  
596 -```  
597 -  
598 -cardExt详见附录4,值得注意的是,这里的card_ext参数必须与参与签名的参数一致,格式为字符串而不是Object,否则会报签名错误。  
599 -  
600 -### 查看微信卡包中的卡券接口  
601 -```javascript  
602 -wx.openCard({  
603 - cardList: [{  
604 - cardId: '',  
605 - code: ''  
606 - }]// 需要打开的卡券列表  
607 -});  
608 -```  
609 -  
610 -### 核销后再次赠送卡券接口  
611 -```javascript  
612 -wx.consumeAndShareCard({  
613 - cardId: '',  
614 - code: ''  
615 -});  
616 -```  
617 -  
618 -参数说明:  
619 -  
620 -|参数 |说明  
621 -| --- | ---  
622 -|cardId |上一步核销的card_id,若传入错误的card_id会报错  
623 -|code |上一步核销的code,若传入错误的code会报错  
624 -  
625 -注意:  
626 -该接口只支持微信6.3.6以上版本的客户端,开发者在调用时需要注意两点:  
627 -  
628 -1. 需要引入1.1.0版本的js文件: https://res.wx.qq.com/open/js/jweixin-1.1.0.js  
629 -2. 需要判断用户客户端版本号,做出容错处理,详情点击:判断当前客户端版本是否支持指定JS接口  
630 -  
631 -## 微信支付  
632 -  
633 -### 发起一个微信支付请求  
634 -```javascript  
635 -wx.chooseWXPay({  
636 - timestamp: 0, // 支付签名时间戳,注意微信jssdk中的所有使用timestamp字段均为小写。但最新版的支付后台生成签名使用的timeStamp字段名需大写其中的S字符  
637 - nonceStr: '', // 支付签名随机串,不长于 32 位  
638 - package: '', // 统一支付接口返回的prepay_id参数值,提交格式如:prepay_id=***)  
639 - signType: '', // 签名方式,默认为'SHA1',使用新版支付需传入'MD5'  
640 - paySign: '', // 支付签名  
641 - success: function (res) {  
642 - // 支付成功后的回调函数  
643 - }  
644 -});  
645 -```  
646 -  
647 -备注:prepay_id 通过微信支付统一下单接口拿到,paySign 采用统一的微信支付 Sign 签名生成方法,注意这里 appId 也要参与签名,appId 与 config 中传入的 appId 一致,即最后参与签名的参数有appId, timeStamp, nonceStr, package, signType。  
648 -  
649 -**请注意该接口只能在你配置的支付目录下调用,同时需确保支付目录在JS接口安全域名下。**  
650 -  
651 -微信支付开发文档:[https://pay.weixin.qq.com/wiki/doc/api/index.html](https://pay.weixin.qq.com/wiki/doc/api/index.html)