├── damopotal ├── static │ └── .gitkeep ├── build │ ├── logo.png │ └── vue-loader.conf.js ├── config │ ├── prod.env.js │ └── dev.env.js ├── src │ ├── assets │ │ ├── logo.png │ │ └── top-logo-en.png │ ├── router │ │ └── index.js │ ├── components │ │ └── banner.vue │ ├── views │ │ └── index.vue │ ├── main.js │ └── App.vue ├── .editorconfig ├── .gitignore ├── .babelrc ├── .postcssrc.js ├── index.html └── README.md ├── geekbook ├── static │ ├── .gitkeep │ ├── img │ │ ├── me.png │ │ ├── book.png │ │ ├── other.png │ │ ├── room.png │ │ ├── todo.png │ │ ├── unlogin.png │ │ ├── me-active.png │ │ ├── book-active.png │ │ ├── other-active.png │ │ ├── room-active.png │ │ └── todo-active.png │ └── 图书二维码 │ │ ├── vue.png │ │ ├── 三体.png │ │ ├── 三体2.png │ │ ├── 三体3.png │ │ ├── 区块脸.png │ │ ├── 算法.png │ │ ├── 高程.png │ │ ├── react.png │ │ ├── 数学之美.png │ │ ├── 毛选1.jpeg │ │ ├── 浪潮之巅.png │ │ ├── 非暴力沟通.png │ │ ├── node实战.png │ │ ├── 图解http.png │ │ ├── 1522811132.png │ │ └── 1522811163.png ├── .eslintignore ├── config │ ├── prod.env.js │ └── dev.env.js ├── src │ ├── pages │ │ ├── me │ │ │ └── main.js │ │ ├── detail │ │ │ └── main.js │ │ ├── books │ │ │ └── main.js │ │ └── comments │ │ │ └── main.js │ ├── config.js │ ├── components │ │ └── Rate.vue │ ├── App.vue │ └── utils │ │ └── index.js ├── .postcssrc.js ├── .editorconfig ├── .gitignore ├── server │ ├── controllers │ │ ├── upload.js │ │ ├── login.js │ │ ├── top.js │ │ ├── user.js │ │ ├── addcomment.js │ │ ├── index.js │ │ ├── bookdetail.js │ │ ├── message.js │ │ ├── commentlist.js │ │ └── booklist.js │ ├── process.prod.json │ ├── .eslintrc.json │ ├── nodemon.json │ ├── app.js │ ├── tools.md │ ├── middlewares │ │ └── response.js │ ├── qcloud.js │ ├── tools │ │ ├── snail.sql │ │ └── initdb.js │ └── package.json ├── index.html ├── build │ ├── dev-client.js │ ├── vue-loader.conf.js │ └── build.js ├── .babelrc ├── README.md ├── project.config.json ├── .project └── .eslintrc.js ├── VueSliderShow ├── static │ └── .gitkeep ├── VueSlider.gif ├── build │ ├── logo.png │ └── vue-loader.conf.js ├── config │ ├── prod.env.js │ └── dev.env.js ├── src │ ├── assets │ │ ├── 1.jpg │ │ ├── 2.jpg │ │ └── logo.png │ ├── router │ │ └── index.js │ ├── main.js │ └── App.vue ├── .editorconfig ├── .gitignore ├── .babelrc ├── .postcssrc.js ├── index.html ├── .project └── README.md ├── .gitignore ├── Toilet-React-native ├── toilet │ ├── .watchmanconfig │ ├── .gitattributes │ ├── .babelrc │ ├── app.json │ ├── android │ │ ├── settings.gradle │ │ ├── app │ │ │ └── src │ │ │ │ └── main │ │ │ │ ├── res │ │ │ │ ├── values │ │ │ │ │ ├── strings.xml │ │ │ │ │ └── styles.xml │ │ │ │ ├── drawable-mdpi │ │ │ │ │ ├── image_wc.png │ │ │ │ │ ├── image_read.png │ │ │ │ │ ├── image_wced.png │ │ │ │ │ ├── image_readed.png │ │ │ │ │ ├── image_setting.png │ │ │ │ │ ├── image_weather.png │ │ │ │ │ ├── image_settinged.png │ │ │ │ │ └── image_weathered.png │ │ │ │ ├── mipmap-hdpi │ │ │ │ │ └── ic_launcher.png │ │ │ │ ├── mipmap-mdpi │ │ │ │ │ └── ic_launcher.png │ │ │ │ ├── mipmap-xhdpi │ │ │ │ │ └── ic_launcher.png │ │ │ │ └── mipmap-xxhdpi │ │ │ │ │ └── ic_launcher.png │ │ │ │ ├── assets │ │ │ │ └── index.android.bundle.meta │ │ │ │ ├── java │ │ │ │ └── com │ │ │ │ │ └── toilet │ │ │ │ │ └── MainActivity.java │ │ │ │ └── AndroidManifest.xml │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── keystores │ │ │ ├── debug.keystore.properties │ │ │ └── BUCK │ │ ├── build.gradle │ │ └── gradle.properties │ ├── image │ │ ├── 1.png │ │ ├── wc.png │ │ ├── loc.png │ │ ├── logo.png │ │ ├── read.png │ │ ├── wced.png │ │ ├── readed.png │ │ ├── setting.png │ │ ├── weather.png │ │ ├── settinged.png │ │ ├── weathered.png │ │ ├── close_blue.png │ │ └── geolocation.png │ ├── ios │ │ ├── toilet │ │ │ ├── Images.xcassets │ │ │ │ ├── Contents.json │ │ │ │ └── AppIcon.appiconset │ │ │ │ │ └── Contents.json │ │ │ ├── AppDelegate.h │ │ │ └── main.m │ │ ├── toiletTests │ │ │ └── Info.plist │ │ └── toilet-tvOSTests │ │ │ └── Info.plist │ ├── android_views │ │ ├── setting │ │ │ ├── help_1.png │ │ │ ├── help_2.png │ │ │ ├── help_3.png │ │ │ └── about.js │ │ ├── toiletPage.js │ │ ├── weather.js │ │ ├── read │ │ │ └── search.js │ │ └── util.js │ ├── index.js │ ├── .buckconfig │ ├── __tests__ │ │ └── App.js │ ├── package.json │ └── .gitignore ├── service │ ├── node_modules │ │ ├── mime │ │ │ ├── .npmignore │ │ │ ├── cli.js │ │ │ ├── build │ │ │ │ └── build.js │ │ │ └── LICENSE │ │ ├── qs │ │ │ ├── .eslintignore │ │ │ ├── test │ │ │ │ ├── index.js │ │ │ │ └── .eslintrc │ │ │ ├── lib │ │ │ │ ├── index.js │ │ │ │ └── formats.js │ │ │ ├── .editorconfig │ │ │ └── .eslintrc │ │ ├── express │ │ │ ├── node_modules │ │ │ │ ├── qs │ │ │ │ │ ├── .eslintignore │ │ │ │ │ ├── test │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── .eslintrc │ │ │ │ │ ├── lib │ │ │ │ │ │ ├── index.js │ │ │ │ │ │ └── formats.js │ │ │ │ │ ├── .editorconfig │ │ │ │ │ └── .eslintrc │ │ │ │ └── statuses │ │ │ │ │ └── HISTORY.md │ │ │ ├── index.js │ │ │ └── lib │ │ │ │ └── middleware │ │ │ │ ├── init.js │ │ │ │ └── query.js │ │ ├── ipaddr.js │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── bower.json │ │ │ ├── Cakefile │ │ │ └── LICENSE │ │ ├── debug │ │ │ ├── node.js │ │ │ ├── .coveralls.yml │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── .eslintrc │ │ │ ├── src │ │ │ │ ├── index.js │ │ │ │ └── inspector-log.js │ │ │ ├── component.json │ │ │ └── LICENSE │ │ ├── cookie-signature │ │ │ ├── .npmignore │ │ │ └── History.md │ │ ├── iconv-lite │ │ │ ├── .npmignore │ │ │ ├── .travis.yml │ │ │ ├── encodings │ │ │ │ ├── index.js │ │ │ │ └── tables │ │ │ │ │ └── gbk-added.json │ │ │ ├── lib │ │ │ │ └── index.d.ts │ │ │ └── LICENSE │ │ ├── unpipe │ │ │ ├── HISTORY.md │ │ │ └── LICENSE │ │ ├── random-bytes │ │ │ ├── HISTORY.md │ │ │ └── LICENSE │ │ ├── utils-merge │ │ │ ├── .travis.yml │ │ │ ├── index.js │ │ │ ├── README.md │ │ │ └── LICENSE │ │ ├── safe-buffer │ │ │ ├── .travis.yml │ │ │ └── LICENSE │ │ ├── express-session │ │ │ └── node_modules │ │ │ │ └── utils-merge │ │ │ │ ├── .npmignore │ │ │ │ ├── index.js │ │ │ │ └── LICENSE │ │ ├── .bin │ │ │ ├── mime.cmd │ │ │ └── mime │ │ ├── mime-db │ │ │ ├── index.js │ │ │ └── LICENSE │ │ ├── inherits │ │ │ ├── inherits.js │ │ │ ├── inherits_browser.js │ │ │ └── LICENSE │ │ ├── encodeurl │ │ │ ├── HISTORY.md │ │ │ └── LICENSE │ │ ├── crc │ │ │ ├── lib │ │ │ │ ├── define_crc.js │ │ │ │ ├── index.js │ │ │ │ ├── create_buffer.js │ │ │ │ ├── crc1.js │ │ │ │ └── crc16_xmodem.js │ │ │ └── LICENSE │ │ ├── on-headers │ │ │ ├── HISTORY.md │ │ │ └── LICENSE │ │ ├── forwarded │ │ │ ├── HISTORY.md │ │ │ └── LICENSE │ │ ├── setprototypeof │ │ │ ├── index.js │ │ │ ├── README.md │ │ │ └── LICENSE │ │ ├── depd │ │ │ ├── lib │ │ │ │ └── compat │ │ │ │ │ └── event-listener-count.js │ │ │ └── LICENSE │ │ ├── merge-descriptors │ │ │ └── HISTORY.md │ │ ├── http-errors │ │ │ └── node_modules │ │ │ │ └── depd │ │ │ │ ├── lib │ │ │ │ └── compat │ │ │ │ │ └── event-listener-count.js │ │ │ │ └── LICENSE │ │ ├── content-type │ │ │ ├── HISTORY.md │ │ │ └── LICENSE │ │ ├── methods │ │ │ └── HISTORY.md │ │ ├── media-typer │ │ │ ├── HISTORY.md │ │ │ └── LICENSE │ │ ├── path-to-regexp │ │ │ ├── History.md │ │ │ └── LICENSE │ │ ├── escape-html │ │ │ └── Readme.md │ │ ├── vary │ │ │ ├── HISTORY.md │ │ │ └── LICENSE │ │ ├── range-parser │ │ │ └── HISTORY.md │ │ ├── content-disposition │ │ │ ├── HISTORY.md │ │ │ └── LICENSE │ │ ├── ms │ │ │ └── license.md │ │ ├── send │ │ │ ├── node_modules │ │ │ │ └── statuses │ │ │ │ │ └── HISTORY.md │ │ │ └── LICENSE │ │ ├── finalhandler │ │ │ ├── node_modules │ │ │ │ └── statuses │ │ │ │ │ └── HISTORY.md │ │ │ └── LICENSE │ │ ├── etag │ │ │ └── LICENSE │ │ ├── destroy │ │ │ └── LICENSE │ │ ├── ee-first │ │ │ └── LICENSE │ │ ├── proxy-addr │ │ │ └── LICENSE │ │ ├── array-flatten │ │ │ └── LICENSE │ │ ├── basic-auth │ │ │ └── HISTORY.md │ │ ├── parseurl │ │ │ └── HISTORY.md │ │ └── uid-safe │ │ │ └── HISTORY.md │ ├── public │ │ ├── data │ │ │ ├── sanwen.json │ │ │ ├── cookies.json │ │ │ ├── mannager.json │ │ │ └── it.json │ │ ├── stylesheets │ │ │ └── style.css │ │ └── javascripts │ │ │ └── edit.js │ ├── views │ │ └── error.ejs │ ├── routes │ │ └── users.js │ └── package.json ├── .project └── README.md ├── VeeValidate ├── css │ ├── _common.scss │ ├── common-stylefix.min.css │ ├── common-stylefix.css.map │ └── common-stylefix.scss ├── VeeValidate.gif ├── veeValidata.jpg ├── 20180508165903.jpg ├── .project └── README.md ├── Node-Express4 ├── data.json ├── node.jpg ├── node-express.gif ├── views │ └── error.ejs ├── test │ └── test_db.js ├── public │ └── stylesheets │ │ └── style.css ├── routes │ ├── users.js │ └── index.js ├── README.md ├── package.json └── db.js ├── public ├── alipay.jpg └── wechat.jpg ├── heishenhua ├── img │ ├── wukong.png │ ├── icon-home-news.png │ └── 105_sch_1724689979293643365.jpg ├── new_file.html └── index.html ├── skeleton-demo ├── skeleton.gif ├── README.md ├── index.html └── .project ├── reactmvsearch ├── src │ ├── index.css │ ├── index.js │ ├── App.test.js │ └── components │ │ ├── Movies.js │ │ ├── Search.js │ │ └── Movie.js ├── public │ ├── favicon.ico │ └── manifest.json ├── .gitignore ├── package.json └── .project ├── Pseudo-classes ├── img │ └── landing.jpg ├── css │ ├── P2.css │ ├── P9.css │ └── P1.css ├── P3.html ├── P2.html ├── P8.html ├── P1.html ├── README.md ├── P4.html ├── P5.html ├── P6.html └── .project ├── dry-switching-with-css ├── info.gif ├── query.gif ├── query-demo │ ├── 6.gif │ ├── 8.gif │ ├── index.html │ └── .project ├── .idea │ ├── modules.xml │ ├── dry-switching-with-css.iml │ └── watcherTasks.xml ├── README.md ├── .project └── infographic-demo │ └── index.html ├── .project └── curtains-effect ├── .project └── index.html /damopotal/static/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /geekbook/static/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /VueSliderShow/static/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modles 2 | *.log 3 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/.watchmanconfig: -------------------------------------------------------------------------------- 1 | {} -------------------------------------------------------------------------------- /geekbook/.eslintignore: -------------------------------------------------------------------------------- 1 | build/*.js 2 | config/*.js 3 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/mime/.npmignore: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Toilet-React-native/service/public/data/sanwen.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /Toilet-React-native/service/public/data/cookies.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /Toilet-React-native/service/public/data/mannager.json: -------------------------------------------------------------------------------- 1 | [] 2 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/.gitattributes: -------------------------------------------------------------------------------- 1 | *.pbxproj -text 2 | -------------------------------------------------------------------------------- /VeeValidate/css/_common.scss: -------------------------------------------------------------------------------- 1 | @import "common-stylefix"; 2 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/qs/.eslintignore: -------------------------------------------------------------------------------- 1 | dist 2 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": ["react-native"] 3 | } 4 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express/node_modules/qs/.eslintignore: -------------------------------------------------------------------------------- 1 | dist 2 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/ipaddr.js/.npmignore: -------------------------------------------------------------------------------- 1 | .idea 2 | node_modules 3 | -------------------------------------------------------------------------------- /geekbook/config/prod.env.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | NODE_ENV: '"production"' 3 | } 4 | -------------------------------------------------------------------------------- /Node-Express4/data.json: -------------------------------------------------------------------------------- 1 | [{"name":"test1"},{"name":"test2"},{"name":"test3"},{"name":"test5"}] -------------------------------------------------------------------------------- /public/alipay.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/public/alipay.jpg -------------------------------------------------------------------------------- /public/wechat.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/public/wechat.jpg -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/debug/node.js: -------------------------------------------------------------------------------- 1 | module.exports = require('./src/node'); 2 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/app.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "toilet", 3 | "displayName": "toilet" 4 | } -------------------------------------------------------------------------------- /Node-Express4/node.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Node-Express4/node.jpg -------------------------------------------------------------------------------- /damopotal/build/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/damopotal/build/logo.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/settings.gradle: -------------------------------------------------------------------------------- 1 | rootProject.name = 'toilet' 2 | 3 | include ':app' 4 | -------------------------------------------------------------------------------- /damopotal/config/prod.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | module.exports = { 3 | NODE_ENV: '"production"' 4 | } 5 | -------------------------------------------------------------------------------- /geekbook/static/img/me.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/me.png -------------------------------------------------------------------------------- /heishenhua/img/wukong.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/heishenhua/img/wukong.png -------------------------------------------------------------------------------- /skeleton-demo/skeleton.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/skeleton-demo/skeleton.gif -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/cookie-signature/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | *.sock 5 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/debug/.coveralls.yml: -------------------------------------------------------------------------------- 1 | repo_token: SIAeZjKYlHK74rbcFvNHMUzjRiMpflxve 2 | -------------------------------------------------------------------------------- /VeeValidate/VeeValidate.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/VeeValidate/VeeValidate.gif -------------------------------------------------------------------------------- /VeeValidate/veeValidata.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/VeeValidate/veeValidata.jpg -------------------------------------------------------------------------------- /VueSliderShow/VueSlider.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/VueSliderShow/VueSlider.gif -------------------------------------------------------------------------------- /VueSliderShow/build/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/VueSliderShow/build/logo.png -------------------------------------------------------------------------------- /VueSliderShow/config/prod.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | module.exports = { 3 | NODE_ENV: '"production"' 4 | } 5 | -------------------------------------------------------------------------------- /damopotal/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/damopotal/src/assets/logo.png -------------------------------------------------------------------------------- /geekbook/static/img/book.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/book.png -------------------------------------------------------------------------------- /geekbook/static/img/other.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/other.png -------------------------------------------------------------------------------- /geekbook/static/img/room.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/room.png -------------------------------------------------------------------------------- /geekbook/static/img/todo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/todo.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/vue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/vue.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/三体.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/三体.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/三体2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/三体2.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/三体3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/三体3.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/区块脸.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/区块脸.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/算法.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/算法.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/高程.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/高程.png -------------------------------------------------------------------------------- /reactmvsearch/src/index.css: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | padding: 0; 4 | font-family: sans-serif; 5 | } 6 | -------------------------------------------------------------------------------- /Node-Express4/node-express.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Node-Express4/node-express.gif -------------------------------------------------------------------------------- /Pseudo-classes/img/landing.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Pseudo-classes/img/landing.jpg -------------------------------------------------------------------------------- /VeeValidate/20180508165903.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/VeeValidate/20180508165903.jpg -------------------------------------------------------------------------------- /VueSliderShow/src/assets/1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/VueSliderShow/src/assets/1.jpg -------------------------------------------------------------------------------- /VueSliderShow/src/assets/2.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/VueSliderShow/src/assets/2.jpg -------------------------------------------------------------------------------- /dry-switching-with-css/info.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/dry-switching-with-css/info.gif -------------------------------------------------------------------------------- /geekbook/static/img/unlogin.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/unlogin.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/react.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/react.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/数学之美.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/数学之美.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/毛选1.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/毛选1.jpeg -------------------------------------------------------------------------------- /geekbook/static/图书二维码/浪潮之巅.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/浪潮之巅.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/非暴力沟通.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/非暴力沟通.png -------------------------------------------------------------------------------- /VueSliderShow/src/assets/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/VueSliderShow/src/assets/logo.png -------------------------------------------------------------------------------- /dry-switching-with-css/query.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/dry-switching-with-css/query.gif -------------------------------------------------------------------------------- /geekbook/static/img/me-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/me-active.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/node实战.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/node实战.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/图解http.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/图解http.png -------------------------------------------------------------------------------- /heishenhua/img/icon-home-news.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/heishenhua/img/icon-home-news.png -------------------------------------------------------------------------------- /reactmvsearch/public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/reactmvsearch/public/favicon.ico -------------------------------------------------------------------------------- /Node-Express4/views/error.ejs: -------------------------------------------------------------------------------- 1 |

<%= message %>

2 |

<%= error.status %>

3 |
<%= error.stack %>
4 | -------------------------------------------------------------------------------- /damopotal/src/assets/top-logo-en.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/damopotal/src/assets/top-logo-en.png -------------------------------------------------------------------------------- /geekbook/static/img/book-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/book-active.png -------------------------------------------------------------------------------- /geekbook/static/img/other-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/other-active.png -------------------------------------------------------------------------------- /geekbook/static/img/room-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/room-active.png -------------------------------------------------------------------------------- /geekbook/static/img/todo-active.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/img/todo-active.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/1522811132.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/1522811132.png -------------------------------------------------------------------------------- /geekbook/static/图书二维码/1522811163.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/geekbook/static/图书二维码/1522811163.png -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/iconv-lite/.npmignore: -------------------------------------------------------------------------------- 1 | *~ 2 | *sublime-* 3 | generation 4 | test 5 | wiki 6 | coverage 7 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/unpipe/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.0 / 2015-06-14 2 | ================== 3 | 4 | * Initial release 5 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/1.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/wc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/wc.png -------------------------------------------------------------------------------- /dry-switching-with-css/query-demo/6.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/dry-switching-with-css/query-demo/6.gif -------------------------------------------------------------------------------- /dry-switching-with-css/query-demo/8.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/dry-switching-with-css/query-demo/8.gif -------------------------------------------------------------------------------- /geekbook/src/pages/me/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Me from './Me' 3 | 4 | const app = new Vue(Me) 5 | app.$mount() 6 | -------------------------------------------------------------------------------- /Node-Express4/test/test_db.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | let db = require('../db'); 3 | db.add({name:'nihao'}); 4 | console.log(db.list); 5 | 6 | -------------------------------------------------------------------------------- /Toilet-React-native/service/views/error.ejs: -------------------------------------------------------------------------------- 1 |

<%= message %>

2 |

<%= error.status %>

3 |
<%= error.stack %>
4 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/loc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/loc.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/logo.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/logo.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/read.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/read.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/wced.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/wced.png -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/random-bytes/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.0 / 2016-01-17 2 | ================== 3 | 4 | * Initial release 5 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/readed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/readed.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/setting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/setting.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/weather.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/weather.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/settinged.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/settinged.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/weathered.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/weathered.png -------------------------------------------------------------------------------- /geekbook/src/pages/detail/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Detail from './Detail' 3 | 4 | const app = new Vue(Detail) 5 | app.$mount() 6 | -------------------------------------------------------------------------------- /heishenhua/img/105_sch_1724689979293643365.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/heishenhua/img/105_sch_1724689979293643365.jpg -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/values/strings.xml: -------------------------------------------------------------------------------- 1 | 2 | toilet 3 | 4 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/close_blue.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/close_blue.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/image/geolocation.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/image/geolocation.png -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/utils-merge/.travis.yml: -------------------------------------------------------------------------------- 1 | language: "node_js" 2 | node_js: 3 | - "0.4" 4 | - "0.6" 5 | - "0.8" 6 | - "0.10" 7 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/ios/toilet/Images.xcassets/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "info" : { 3 | "version" : 1, 4 | "author" : "xcode" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/qs/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | require('./parse'); 4 | 5 | require('./stringify'); 6 | 7 | require('./utils'); 8 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/safe-buffer/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | node_js: 3 | - 'node' 4 | - '5' 5 | - '4' 6 | - '0.12' 7 | - '0.10' 8 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android_views/setting/help_1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android_views/setting/help_1.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android_views/setting/help_2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android_views/setting/help_2.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android_views/setting/help_3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android_views/setting/help_3.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/index.js: -------------------------------------------------------------------------------- 1 | import { AppRegistry } from 'react-native'; 2 | import App from './App'; 3 | 4 | AppRegistry.registerComponent('toilet', () => App); 5 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/debug/.npmignore: -------------------------------------------------------------------------------- 1 | support 2 | test 3 | examples 4 | example 5 | *.sock 6 | dist 7 | yarn.lock 8 | coverage 9 | bower.json 10 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/.buckconfig: -------------------------------------------------------------------------------- 1 | 2 | [android] 3 | target = Google Inc.:Google APIs:23 4 | 5 | [maven_repositories] 6 | central = https://repo1.maven.org/maven2 7 | -------------------------------------------------------------------------------- /geekbook/.postcssrc.js: -------------------------------------------------------------------------------- 1 | // https://github.com/michael-ciniawsky/postcss-load-config 2 | 3 | module.exports = { 4 | "plugins": { 5 | "postcss-mpvue-wxss": {} 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /Node-Express4/public/stylesheets/style.css: -------------------------------------------------------------------------------- 1 | body { 2 | padding: 50px; 3 | font: 14px "Lucida Grande", Helvetica, Arial, sans-serif; 4 | } 5 | 6 | a { 7 | color: #00B7FF; 8 | } 9 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express/node_modules/qs/test/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | require('./parse'); 4 | 5 | require('./stringify'); 6 | 7 | require('./utils'); 8 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/gradle/wrapper/gradle-wrapper.jar: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/gradle/wrapper/gradle-wrapper.jar -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/keystores/debug.keystore.properties: -------------------------------------------------------------------------------- 1 | key.store=debug.keystore 2 | key.alias=androiddebugkey 3 | key.store.password=android 4 | key.alias.password=android 5 | -------------------------------------------------------------------------------- /geekbook/config/dev.env.js: -------------------------------------------------------------------------------- 1 | var merge = require('webpack-merge') 2 | var prodEnv = require('./prod.env') 3 | 4 | module.exports = merge(prodEnv, { 5 | NODE_ENV: '"development"' 6 | }) 7 | -------------------------------------------------------------------------------- /Toilet-React-native/service/public/stylesheets/style.css: -------------------------------------------------------------------------------- 1 | body { 2 | padding: 50px; 3 | font: 14px "Lucida Grande", Helvetica, Arial, sans-serif; 4 | } 5 | 6 | a { 7 | color: #00B7FF; 8 | } 9 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/ipaddr.js/.travis.yml: -------------------------------------------------------------------------------- 1 | language: node_js 2 | 3 | node_js: 4 | - "0.10" 5 | - "0.11" 6 | - "0.12" 7 | - "4.0" 8 | - "4.1" 9 | - "4.2" 10 | - "5" 11 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_wc.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_wc.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/mipmap-hdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/mipmap-hdpi/ic_launcher.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/mipmap-mdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/mipmap-mdpi/ic_launcher.png -------------------------------------------------------------------------------- /damopotal/config/dev.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const merge = require('webpack-merge') 3 | const prodEnv = require('./prod.env') 4 | 5 | module.exports = merge(prodEnv, { 6 | NODE_ENV: '"development"' 7 | }) 8 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express-session/node_modules/utils-merge/.npmignore: -------------------------------------------------------------------------------- 1 | CONTRIBUTING.md 2 | Makefile 3 | docs/ 4 | examples/ 5 | reports/ 6 | test/ 7 | 8 | .jshintrc 9 | .travis.yml 10 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/assets/index.android.bundle.meta: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/assets/index.android.bundle.meta -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_read.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_read.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_wced.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_wced.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/mipmap-xhdpi/ic_launcher.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.png -------------------------------------------------------------------------------- /VueSliderShow/config/dev.env.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const merge = require('webpack-merge') 3 | const prodEnv = require('./prod.env') 4 | 5 | module.exports = merge(prodEnv, { 6 | NODE_ENV: '"development"' 7 | }) 8 | -------------------------------------------------------------------------------- /damopotal/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /geekbook/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_readed.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_readed.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_setting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_setting.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_weather.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_weather.png -------------------------------------------------------------------------------- /VueSliderShow/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | charset = utf-8 5 | indent_style = space 6 | indent_size = 2 7 | end_of_line = lf 8 | insert_final_newline = true 9 | trim_trailing_whitespace = true 10 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_settinged.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_settinged.png -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_weathered.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HongqingCao/my-code/HEAD/Toilet-React-native/toilet/android/app/src/main/res/drawable-mdpi/image_weathered.png -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/mime/cli.js: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env node 2 | 3 | var mime = require('./mime.js'); 4 | var file = process.argv[2]; 5 | var type = mime.lookup(file); 6 | 7 | process.stdout.write(type + '\n'); 8 | 9 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/keystores/BUCK: -------------------------------------------------------------------------------- 1 | keystore( 2 | name = "debug", 3 | properties = "debug.keystore.properties", 4 | store = "debug.keystore", 5 | visibility = [ 6 | "PUBLIC", 7 | ], 8 | ) 9 | -------------------------------------------------------------------------------- /geekbook/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | dist/ 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | 8 | # Editor directories and files 9 | .idea 10 | *.suo 11 | *.ntvs* 12 | *.njsproj 13 | *.sln 14 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/.bin/mime.cmd: -------------------------------------------------------------------------------- 1 | @IF EXIST "%~dp0\node.exe" ( 2 | "%~dp0\node.exe" "%~dp0\..\mime\cli.js" %* 3 | ) ELSE ( 4 | @SETLOCAL 5 | @SET PATHEXT=%PATHEXT:;.JS;=;% 6 | node "%~dp0\..\mime\cli.js" %* 7 | ) -------------------------------------------------------------------------------- /geekbook/src/pages/books/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Book from './Book' 3 | 4 | const app = new Vue(Book) 5 | app.$mount() 6 | 7 | export default{ 8 | config: { 9 | enablePullDownRefresh: true 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /damopotal/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | /dist/ 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | 8 | # Editor directories and files 9 | .idea 10 | .vscode 11 | *.suo 12 | *.ntvs* 13 | *.njsproj 14 | *.sln 15 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/mime-db/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * mime-db 3 | * Copyright(c) 2014 Jonathan Ong 4 | * MIT Licensed 5 | */ 6 | 7 | /** 8 | * Module exports. 9 | */ 10 | 11 | module.exports = require('./db.json') 12 | -------------------------------------------------------------------------------- /VueSliderShow/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | /dist/ 4 | npm-debug.log* 5 | yarn-debug.log* 6 | yarn-error.log* 7 | 8 | # Editor directories and files 9 | .idea 10 | .vscode 11 | *.suo 12 | *.ntvs* 13 | *.njsproj 14 | *.sln 15 | -------------------------------------------------------------------------------- /geekbook/server/controllers/upload.js: -------------------------------------------------------------------------------- 1 | const { uploader } = require('../qcloud') 2 | 3 | module.exports = async ctx => { 4 | // 获取上传之后的结果 5 | // 具体可以查看: 6 | const data = await uploader(ctx.req) 7 | 8 | ctx.state.data = data 9 | } 10 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/debug/.travis.yml: -------------------------------------------------------------------------------- 1 | 2 | language: node_js 3 | node_js: 4 | - "6" 5 | - "5" 6 | - "4" 7 | 8 | install: 9 | - make node_modules 10 | 11 | script: 12 | - make lint 13 | - make test 14 | - make coveralls 15 | -------------------------------------------------------------------------------- /geekbook/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | geekbook 6 | 7 | 8 |
9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /geekbook/src/config.js: -------------------------------------------------------------------------------- 1 | //配置项 2 | const host = 'http://localhost:5757' 3 | //const host ='https://qr6yqgl4.qcloud.la' 4 | const config = { 5 | host, 6 | loginUrl: `${host}/weapp/login`, 7 | userUrl: `${host}/weapp/user` 8 | } 9 | export default config 10 | -------------------------------------------------------------------------------- /Node-Express4/routes/users.js: -------------------------------------------------------------------------------- 1 | var express = require('express'); 2 | var router = express.Router(); 3 | 4 | /* GET users listing. */ 5 | router.get('/', function(req, res, next) { 6 | res.send('respond with a resource'); 7 | }); 8 | 9 | module.exports = router; 10 | -------------------------------------------------------------------------------- /Node-Express4/routes/index.js: -------------------------------------------------------------------------------- 1 | var express = require('express'); 2 | var router = express.Router(); 3 | 4 | /* GET home page. */ 5 | router.get('/', function(req, res, next) { 6 | res.render('index', { title: 'Express' }); 7 | }); 8 | 9 | module.exports = router; 10 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/inherits/inherits.js: -------------------------------------------------------------------------------- 1 | try { 2 | var util = require('util'); 3 | if (typeof util.inherits !== 'function') throw ''; 4 | module.exports = util.inherits; 5 | } catch (e) { 6 | module.exports = require('./inherits_browser.js'); 7 | } 8 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/debug/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "browser": true, 4 | "node": true 5 | }, 6 | "rules": { 7 | "no-console": 0, 8 | "no-empty": [1, { "allowEmptyCatch": true }] 9 | }, 10 | "extends": "eslint:recommended" 11 | } 12 | -------------------------------------------------------------------------------- /Toilet-React-native/service/routes/users.js: -------------------------------------------------------------------------------- 1 | var express = require('express'); 2 | var router = express.Router(); 3 | 4 | /* GET users listing. */ 5 | router.get('/', function(req, res, next) { 6 | res.send('respond with a resource'); 7 | }); 8 | 9 | module.exports = router; 10 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/res/values/styles.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/gradle/wrapper/gradle-wrapper.properties: -------------------------------------------------------------------------------- 1 | distributionBase=GRADLE_USER_HOME 2 | distributionPath=wrapper/dists 3 | zipStoreBase=GRADLE_USER_HOME 4 | zipStorePath=wrapper/dists 5 | distributionUrl=https\://services.gradle.org/distributions/gradle-2.14.1-all.zip 6 | -------------------------------------------------------------------------------- /geekbook/src/pages/comments/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Comment from './Comment' 3 | 4 | const app = new Vue(Comment) 5 | app.$mount() 6 | 7 | export default{ 8 | config:{ 9 | navigationBarTitleText:'评论列表', 10 | enablePullDownRefresh:true 11 | } 12 | 13 | } 14 | -------------------------------------------------------------------------------- /VueSliderShow/src/router/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Router from 'vue-router' 3 | import Index from '@/components/index' 4 | 5 | Vue.use(Router) 6 | 7 | export default new Router({ 8 | routes: [ 9 | { 10 | path: '/', 11 | component: Index 12 | } 13 | ] 14 | }) 15 | -------------------------------------------------------------------------------- /VueSliderShow/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | ["env", { 4 | "modules": false, 5 | "targets": { 6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"] 7 | } 8 | }], 9 | "stage-2" 10 | ], 11 | "plugins": ["transform-vue-jsx", "transform-runtime"] 12 | } 13 | -------------------------------------------------------------------------------- /damopotal/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | ["env", { 4 | "modules": false, 5 | "targets": { 6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"] 7 | } 8 | }], 9 | "stage-2" 10 | ], 11 | "plugins": ["transform-vue-jsx", "transform-runtime"] 12 | } 13 | -------------------------------------------------------------------------------- /reactmvsearch/src/index.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom'; 3 | import './index.css'; 4 | import App from './App'; 5 | import registerServiceWorker from './registerServiceWorker'; 6 | 7 | ReactDOM.render(, document.getElementById('root')); 8 | registerServiceWorker(); 9 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/qs/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var stringify = require('./stringify'); 4 | var parse = require('./parse'); 5 | var formats = require('./formats'); 6 | 7 | module.exports = { 8 | formats: formats, 9 | parse: parse, 10 | stringify: stringify 11 | }; 12 | -------------------------------------------------------------------------------- /damopotal/.postcssrc.js: -------------------------------------------------------------------------------- 1 | // https://github.com/michael-ciniawsky/postcss-load-config 2 | 3 | module.exports = { 4 | "plugins": { 5 | "postcss-import": {}, 6 | "postcss-url": {}, 7 | // to edit target browsers: use "browserslist" field in package.json 8 | "autoprefixer": {} 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /geekbook/build/dev-client.js: -------------------------------------------------------------------------------- 1 | /* eslint-disable */ 2 | require('eventsource-polyfill') 3 | var hotClient = require('webpack-hot-middleware/client?noInfo=true&reload=true') 4 | 5 | hotClient.subscribe(function (event) { 6 | if (event.action === 'reload') { 7 | window.location.reload() 8 | } 9 | }) 10 | -------------------------------------------------------------------------------- /reactmvsearch/src/App.test.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import ReactDOM from 'react-dom'; 3 | import App from './App'; 4 | 5 | it('renders without crashing', () => { 6 | const div = document.createElement('div'); 7 | ReactDOM.render(, div); 8 | ReactDOM.unmountComponentAtNode(div); 9 | }); 10 | -------------------------------------------------------------------------------- /VueSliderShow/.postcssrc.js: -------------------------------------------------------------------------------- 1 | // https://github.com/michael-ciniawsky/postcss-load-config 2 | 3 | module.exports = { 4 | "plugins": { 5 | "postcss-import": {}, 6 | "postcss-url": {}, 7 | // to edit target browsers: use "browserslist" field in package.json 8 | "autoprefixer": {} 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /damopotal/src/router/index.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import Router from 'vue-router' 3 | import Index from '@/views/index' 4 | 5 | Vue.use(Router) 6 | 7 | export default new Router({ 8 | routes: [ 9 | { 10 | path: '/', 11 | name: 'Index', 12 | component: Index 13 | } 14 | ] 15 | }) 16 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express/index.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * express 3 | * Copyright(c) 2009-2013 TJ Holowaychuk 4 | * Copyright(c) 2013 Roman Shtylman 5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson 6 | * MIT Licensed 7 | */ 8 | 9 | 'use strict'; 10 | 11 | module.exports = require('./lib/express'); 12 | -------------------------------------------------------------------------------- /geekbook/server/process.prod.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "session", 3 | "script": "app.js", 4 | "cwd": "./", 5 | "exec_mode": "fork", 6 | "watch": true, 7 | "ignore_watch": ["tmp"], 8 | "env": { 9 | "NODE_ENV": "production" 10 | }, 11 | "engines": { 12 | "node": ">=7.6" 13 | } 14 | } -------------------------------------------------------------------------------- /skeleton-demo/README.md: -------------------------------------------------------------------------------- 1 | 2 | ### 使用CSS自定义属性构建骨架屏-demo 3 | 多个背景,css属性,简单过渡和动画实现一个骨架屏 4 | 5 | ### 运行方式 6 | 下载代码,直接用浏览器打开index.html即可浏览效果 7 | 8 | ###### 本demo代码地址: https://github.com/HongqingCao/MyCode/tree/master/skeleton-demo 9 | 10 | ###### ![实例效果](https://github.com/HongqingCao/MyCode/blob/master/skeleton-demo/skeleton.gif) 11 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express/node_modules/qs/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var stringify = require('./stringify'); 4 | var parse = require('./parse'); 5 | var formats = require('./formats'); 6 | 7 | module.exports = { 8 | formats: formats, 9 | parse: parse, 10 | stringify: stringify 11 | }; 12 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/mime/build/build.js: -------------------------------------------------------------------------------- 1 | var db = require('mime-db'); 2 | 3 | var mapByType = {}; 4 | Object.keys(db).forEach(function(key) { 5 | var extensions = db[key].extensions; 6 | if (extensions) { 7 | mapByType[key] = extensions; 8 | } 9 | }); 10 | 11 | console.log(JSON.stringify(mapByType)); 12 | -------------------------------------------------------------------------------- /damopotal/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | damopotal 7 | 8 | 9 |
10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /VueSliderShow/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | vueslidershow 7 | 8 | 9 |
10 | 11 | 12 | 13 | -------------------------------------------------------------------------------- /Pseudo-classes/css/P2.css: -------------------------------------------------------------------------------- 1 | ul.breadcrumb { 2 | padding: 8px 16px; 3 | list-style: none; 4 | background-color: #eee; 5 | } 6 | ul.breadcrumb li { 7 | display: inline; 8 | } 9 | ul.breadcrumb li+li:before { 10 | padding: 8px; 11 | color: black; 12 | content: "/\00a0"; 13 | } 14 | ul.breadcrumb li a { 15 | color: green; 16 | } -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express/node_modules/qs/test/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "consistent-return": 2, 4 | "max-lines": 0, 5 | "max-nested-callbacks": [2, 3], 6 | "max-statements": 0, 7 | "no-extend-native": 0, 8 | "no-magic-numbers": 0, 9 | "sort-keys": 0 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /dry-switching-with-css/.idea/modules.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/debug/src/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Detect Electron renderer process, which is node, but we should 3 | * treat as a browser. 4 | */ 5 | 6 | if (typeof process !== 'undefined' && process.type === 'renderer') { 7 | module.exports = require('./browser.js'); 8 | } else { 9 | module.exports = require('./node.js'); 10 | } 11 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/encodeurl/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.2 / 2018-01-21 2 | ================== 3 | 4 | * Fix encoding `%` as last character 5 | 6 | 1.0.1 / 2016-06-09 7 | ================== 8 | 9 | * Fix encoding unpaired surrogates at start/end of string 10 | 11 | 1.0.0 / 2016-06-08 12 | ================== 13 | 14 | * Initial release 15 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/__tests__/App.js: -------------------------------------------------------------------------------- 1 | import 'react-native'; 2 | import React from 'react'; 3 | import App from '../App'; 4 | 5 | // Note: test renderer must be required after react-native. 6 | import renderer from 'react-test-renderer'; 7 | 8 | it('renders correctly', () => { 9 | const tree = renderer.create( 10 | 11 | ); 12 | }); 13 | -------------------------------------------------------------------------------- /geekbook/server/controllers/login.js: -------------------------------------------------------------------------------- 1 | // 登录授权接口 2 | module.exports = async (ctx, next) => { 3 | // 通过 Koa 中间件进行登录之后 4 | // 登录信息会被存储到 ctx.state.$wxInfo 5 | // 具体查看: 6 | if (ctx.state.$wxInfo.loginState) { 7 | ctx.state.data = ctx.state.$wxInfo.userinfo 8 | ctx.state.data['time'] = Math.floor(Date.now() / 1000) 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /geekbook/server/.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | "parser": "babel-eslint", 4 | "parserOptions": { 5 | "sourceType": "module" 6 | }, 7 | "extends": "standard", 8 | "rules": { 9 | "indent": [2, 4, { "SwitchCase": 1 }], 10 | "arrow-parens": 0, 11 | "generator-star-spacing": 0 12 | }, 13 | "env": { 14 | "mocha": true 15 | } 16 | } -------------------------------------------------------------------------------- /geekbook/server/controllers/top.js: -------------------------------------------------------------------------------- 1 | const {mysql} = require('../qcloud') 2 | 3 | module.exports = async (ctx)=>{ 4 | const top = await mysql('books') 5 | .select('id','title','image','count') 6 | .orderBy('count','desc') 7 | .limit(9) 8 | ctx.state.data = { 9 | list:top 10 | } 11 | } 12 | ///orderBy排序 -------------------------------------------------------------------------------- /geekbook/server/controllers/user.js: -------------------------------------------------------------------------------- 1 | module.exports = async (ctx, next) => { 2 | // 通过 Koa 中间件进行登录态校验之后 3 | // 登录信息会被存储到 ctx.state.$wxInfo 4 | // 具体查看: 5 | if (ctx.state.$wxInfo.loginState === 1) { 6 | // loginState 为 1,登录态校验成功 7 | ctx.state.data = ctx.state.$wxInfo.userinfo 8 | } else { 9 | ctx.state.code = -1 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /damopotal/src/components/banner.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | 18 | 21 | -------------------------------------------------------------------------------- /Pseudo-classes/P3.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 |
Buy
11 |
12 | 13 |
14 |
Buy
15 |
16 | 17 | 18 | -------------------------------------------------------------------------------- /Node-Express4/README.md: -------------------------------------------------------------------------------- 1 | ## nodeJs+express4写一个小后台 2 | 3 | 一个简单带有登陆功能、增删改列表功能的小后台(虽为前端,这个项目没做样式美化,基础bootstrap样式引用),全面应用nodeJs+express4框架技术点 4 | 5 | ### 项目运行: 6 | 7 | 1、安装依赖:npm install 8 | 9 | 2、运行:npm start 10 | 11 | 3、项目运行地址:http://127.0.0.1:3000/ 12 | 13 | 14 | 废话不多说,先看效果gif 15 | 16 | ###### ![实例效果](https://github.com/HongqingCao/MyCode/blob/master/Node-Express4/node-express.gif) 17 | -------------------------------------------------------------------------------- /reactmvsearch/.gitignore: -------------------------------------------------------------------------------- 1 | # See https://help.github.com/ignore-files/ for more about ignoring files. 2 | 3 | # dependencies 4 | /node_modules 5 | 6 | # testing 7 | /coverage 8 | 9 | # production 10 | /build 11 | 12 | # misc 13 | .DS_Store 14 | .env.local 15 | .env.development.local 16 | .env.test.local 17 | .env.production.local 18 | 19 | npm-debug.log* 20 | yarn-debug.log* 21 | yarn-error.log* 22 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/.bin/mime: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | basedir=$(dirname "$(echo "$0" | sed -e 's,\\,/,g')") 3 | 4 | case `uname` in 5 | *CYGWIN*) basedir=`cygpath -w "$basedir"`;; 6 | esac 7 | 8 | if [ -x "$basedir/node" ]; then 9 | "$basedir/node" "$basedir/../mime/cli.js" "$@" 10 | ret=$? 11 | else 12 | node "$basedir/../mime/cli.js" "$@" 13 | ret=$? 14 | fi 15 | exit $ret 16 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/crc/lib/define_crc.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | exports.default = function (model, calc) { 8 | var fn = function fn(buf, previous) { 9 | return calc(buf, previous) >>> 0; 10 | }; 11 | fn.signed = calc; 12 | fn.unsigned = fn; 13 | fn.model = model; 14 | 15 | return fn; 16 | }; -------------------------------------------------------------------------------- /VeeValidate/css/common-stylefix.min.css: -------------------------------------------------------------------------------- 1 | body{margin:0;padding:0}[v-cloak]{visibility:hidden}*,*::before,*::after{box-sizing:border-box}button{border:none;background-color:transparent;padding-left:0;padding-top:0;padding-right:0;padding-bottom:0}a{text-decoration:none !important}ul{margin:0;padding:0;list-style:none}button{outline:none}input,textarea{outline:none} 2 | 3 | /*# sourceMappingURL=common-stylefix.css.map */ -------------------------------------------------------------------------------- /geekbook/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | ["env", { 4 | "modules": false, 5 | "targets": { 6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"] 7 | } 8 | }], 9 | "stage-2" 10 | ], 11 | "plugins": ["transform-runtime"], 12 | "env": { 13 | "test": { 14 | "presets": ["env", "stage-2"], 15 | "plugins": ["istanbul"] 16 | } 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /geekbook/server/nodemon.json: -------------------------------------------------------------------------------- 1 | { 2 | "restartable": "rs", 3 | "ignore": [ 4 | ".git", 5 | "node_modules/**/node_modules" 6 | ], 7 | "verbose": true, 8 | "execMap": { 9 | "js": "node --harmony" 10 | }, 11 | "env": { 12 | "NODE_ENV": "development", 13 | "DEBUG": "*,-nodemon:*,-nodemon,-knex:pool" 14 | }, 15 | "ext": "js json" 16 | } 17 | -------------------------------------------------------------------------------- /dry-switching-with-css/query-demo/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | -------------------------------------------------------------------------------- /reactmvsearch/public/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "short_name": "React App", 3 | "name": "Create React App Sample", 4 | "icons": [ 5 | { 6 | "src": "favicon.ico", 7 | "sizes": "64x64 32x32 24x24 16x16", 8 | "type": "image/x-icon" 9 | } 10 | ], 11 | "start_url": "./index.html", 12 | "display": "standalone", 13 | "theme_color": "#000000", 14 | "background_color": "#ffffff" 15 | } 16 | -------------------------------------------------------------------------------- /Toilet-React-native/service/public/data/it.json: -------------------------------------------------------------------------------- 1 | [{"img":"cxxxx/xxx.img","url":"baidu.com","title":"测试","id":"0F72B02D-BE47-4A80-8202-452FCAE2C0C6","time":"2018-03-20T15:40:49.883Z"},{"img":"img.com","url":"test.cm","title":"12","id":"56E5932A-EDF4-4252-8745-C9EE2112BF2A","time":"2018-03-20T14:13:10.137Z"},{"img":"img.com","url":"test.cm","title":"11","id":"F9648318-5E09-4238-96E3-3D020A5FD0DD","time":"2018-03-19T13:41:45.119Z"}] -------------------------------------------------------------------------------- /Node-Express4/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "myapp", 3 | "version": "0.0.0", 4 | "private": true, 5 | "scripts": { 6 | "start": "node ./bin/www" 7 | }, 8 | "dependencies": { 9 | "body-parser": "~1.18.2", 10 | "cookie-parser": "~1.4.3", 11 | "debug": "~2.6.9", 12 | "ejs": "~2.5.7", 13 | "express": "~4.15.5", 14 | "morgan": "~1.9.0", 15 | "serve-favicon": "~2.4.5" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/on-headers/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.1 / 2015-09-29 2 | ================== 3 | 4 | * perf: enable strict mode 5 | 6 | 1.0.0 / 2014-08-10 7 | ================== 8 | 9 | * Honor `res.statusCode` change in `listener` 10 | * Move to `jshttp` orgainzation 11 | * Prevent `arguments`-related de-opt 12 | 13 | 0.0.0 / 2014-05-13 14 | ================== 15 | 16 | * Initial implementation 17 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/forwarded/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.1.2 / 2017-09-14 2 | ================== 3 | 4 | * perf: improve header parsing 5 | * perf: reduce overhead when no `X-Forwarded-For` header 6 | 7 | 0.1.1 / 2017-09-10 8 | ================== 9 | 10 | * Fix trimming leading / trailing OWS 11 | * perf: hoist regular expression 12 | 13 | 0.1.0 / 2014-09-21 14 | ================== 15 | 16 | * Initial release 17 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/iconv-lite/.travis.yml: -------------------------------------------------------------------------------- 1 | sudo: false 2 | language: node_js 3 | node_js: 4 | - "0.10" 5 | - "0.11" 6 | - "0.12" 7 | - "iojs" 8 | - "4" 9 | - "6" 10 | - "8" 11 | - "node" 12 | 13 | 14 | env: 15 | - CXX=g++-4.8 16 | addons: 17 | apt: 18 | sources: 19 | - ubuntu-toolchain-r-test 20 | packages: 21 | - gcc-4.8 22 | - g++-4.8 23 | 24 | -------------------------------------------------------------------------------- /damopotal/src/views/index.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 18 | 19 | 22 | -------------------------------------------------------------------------------- /damopotal/src/main.js: -------------------------------------------------------------------------------- 1 | // The Vue build version to load with the `import` command 2 | // (runtime-only or standalone) has been set in webpack.base.conf with an alias. 3 | import Vue from 'vue' 4 | import App from './App' 5 | import router from './router' 6 | 7 | Vue.config.productionTip = false 8 | 9 | /* eslint-disable no-new */ 10 | new Vue({ 11 | el: '#app', 12 | router, 13 | components: { App }, 14 | template: '' 15 | }) 16 | -------------------------------------------------------------------------------- /VueSliderShow/src/main.js: -------------------------------------------------------------------------------- 1 | // The Vue build version to load with the `import` command 2 | // (runtime-only or standalone) has been set in webpack.base.conf with an alias. 3 | import Vue from 'vue' 4 | import App from './App' 5 | import router from './router' 6 | 7 | Vue.config.productionTip = false 8 | 9 | /* eslint-disable no-new */ 10 | new Vue({ 11 | el: '#app', 12 | router, 13 | components: { App }, 14 | template: '' 15 | }) 16 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/debug/component.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "debug", 3 | "repo": "visionmedia/debug", 4 | "description": "small debugging utility", 5 | "version": "2.6.9", 6 | "keywords": [ 7 | "debug", 8 | "log", 9 | "debugger" 10 | ], 11 | "main": "src/browser.js", 12 | "scripts": [ 13 | "src/browser.js", 14 | "src/debug.js" 15 | ], 16 | "dependencies": { 17 | "rauchg/ms.js": "0.7.1" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/setprototypeof/index.js: -------------------------------------------------------------------------------- 1 | module.exports = Object.setPrototypeOf || ({__proto__:[]} instanceof Array ? setProtoOf : mixinProperties); 2 | 3 | function setProtoOf(obj, proto) { 4 | obj.__proto__ = proto; 5 | return obj; 6 | } 7 | 8 | function mixinProperties(obj, proto) { 9 | for (var prop in proto) { 10 | if (!obj.hasOwnProperty(prop)) { 11 | obj[prop] = proto[prop]; 12 | } 13 | } 14 | return obj; 15 | } 16 | -------------------------------------------------------------------------------- /VeeValidate/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | VeeValidate 4 | 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | -------------------------------------------------------------------------------- /VueSliderShow/src/App.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 12 | 13 | 23 | -------------------------------------------------------------------------------- /Pseudo-classes/P2.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |

Breadcrumb Pagination

10 | 19 | 20 | 21 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/qs/test/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "rules": { 3 | "array-bracket-newline": 0, 4 | "array-element-newline": 0, 5 | "consistent-return": 2, 6 | "max-lines": 0, 7 | "max-nested-callbacks": [2, 3], 8 | "max-statements": 0, 9 | "no-buffer-constructor": 0, 10 | "no-extend-native": 0, 11 | "no-magic-numbers": 0, 12 | "object-curly-newline": 0, 13 | "sort-keys": 0 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Toilet-React-native/service/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "service", 3 | "version": "0.0.0", 4 | "private": true, 5 | "scripts": { 6 | "start": "node ./bin/www" 7 | }, 8 | "dependencies": { 9 | "body-parser": "~1.18.2", 10 | "cookie-parser": "~1.4.3", 11 | "debug": "~2.6.9", 12 | "ejs": "~2.5.7", 13 | "express": "~4.15.5", 14 | "express-session": "^1.15.6", 15 | "morgan": "~1.9.0", 16 | "serve-favicon": "~2.4.5" 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /reactmvsearch/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "reactmvsearch", 3 | "version": "0.1.0", 4 | "private": true, 5 | "dependencies": { 6 | "prop-types": "^15.6.2", 7 | "react": "^16.4.2", 8 | "react-dom": "^16.4.2", 9 | "react-scripts": "1.1.4" 10 | }, 11 | "scripts": { 12 | "start": "react-scripts start", 13 | "build": "react-scripts build", 14 | "test": "react-scripts test --env=jsdom", 15 | "eject": "react-scripts eject" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /reactmvsearch/src/components/Movies.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import PropTypes from 'prop-types'; 3 | 4 | import Movie from './Movie'; 5 | 6 | const Movies = props => ( 7 |
    8 | {props.movies.map(movie => ( 9 |
  • 10 | 11 |
  • 12 | ))} 13 |
14 | ); 15 | 16 | Movies.propTypes = { 17 | movies: PropTypes.arrayOf(PropTypes.object) 18 | }; 19 | 20 | export default Movies; -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/crc/lib/index.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | module.exports = { 4 | crc1: require('./crc1'), 5 | crc8: require('./crc8'), 6 | crc81wire: require('./crc8_1wire'), 7 | crc16: require('./crc16'), 8 | crc16ccitt: require('./crc16_ccitt'), 9 | crc16modbus: require('./crc16_modbus'), 10 | crc16xmodem: require('./crc16_xmodem'), 11 | crc16kermit: require('./crc16_kermit'), 12 | crc24: require('./crc24'), 13 | crc32: require('./crc32') 14 | }; -------------------------------------------------------------------------------- /VeeValidate/README.md: -------------------------------------------------------------------------------- 1 | 2 | ##### VeeValidate在vue里的表单验证示例 3 | VeeValidate是Vue.js的验证库,它有很多验证规则,并支持自定义规则。它基于模板,因此它与HTML5验证API相似并且很熟悉。您可以验证HTML5输入以及自定义Vue组件。它也是以本地化为基础构建的,有大约44种语言由精彩的社区成员支持和维护 4 | 5 | ######包含以下几点应用: 6 | * 1、基本安装使用 7 | * 2、本地化支持 8 | * 3、自定义规则和错误消息 9 | * 4、验证HTML5输入和自定义Vue组件 10 | * 5、统一提交按钮处理 11 | 12 | ###### 代码地址https://github.com/HongqingCao/MyCode/tree/master/VeeValidate 13 | 14 | ###### ![实例效果](https://github.com/HongqingCao/MyCode/blob/master/VeeValidate/VeeValidate.gif) 15 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/debug/src/inspector-log.js: -------------------------------------------------------------------------------- 1 | module.exports = inspectorLog; 2 | 3 | // black hole 4 | const nullStream = new (require('stream').Writable)(); 5 | nullStream._write = () => {}; 6 | 7 | /** 8 | * Outputs a `console.log()` to the Node.js Inspector console *only*. 9 | */ 10 | function inspectorLog() { 11 | const stdout = console._stdout; 12 | console._stdout = nullStream; 13 | console.log.apply(console, arguments); 14 | console._stdout = stdout; 15 | } 16 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/java/com/toilet/MainActivity.java: -------------------------------------------------------------------------------- 1 | package com.toilet; 2 | 3 | import com.facebook.react.ReactActivity; 4 | 5 | public class MainActivity extends ReactActivity { 6 | 7 | /** 8 | * Returns the name of the main component registered from JavaScript. 9 | * This is used to schedule rendering of the component. 10 | */ 11 | @Override 12 | protected String getMainComponentName() { 13 | return "toilet"; 14 | } 15 | } 16 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/crc/lib/create_buffer.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | Object.defineProperty(exports, "__esModule", { 4 | value: true 5 | }); 6 | 7 | var _buffer = require('buffer'); 8 | 9 | var createBuffer = _buffer.Buffer.from && _buffer.Buffer.alloc && _buffer.Buffer.allocUnsafe && _buffer.Buffer.allocUnsafeSlow ? _buffer.Buffer.from 10 | 11 | // support for Node < 5.10 12 | : function (val) { 13 | return new _buffer.Buffer(val); 14 | }; 15 | 16 | exports.default = createBuffer; -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/depd/lib/compat/event-listener-count.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * depd 3 | * Copyright(c) 2015 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict' 8 | 9 | /** 10 | * Module exports. 11 | * @public 12 | */ 13 | 14 | module.exports = eventListenerCount 15 | 16 | /** 17 | * Get the count of listeners on an event emitter of a specific type. 18 | */ 19 | 20 | function eventListenerCount (emitter, type) { 21 | return emitter.listeners(type).length 22 | } 23 | -------------------------------------------------------------------------------- /Pseudo-classes/P8.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 |

Typing Animation

12 |

13 | webdesign 14 |

15 |
16 | 17 | 18 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/merge-descriptors/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.1 / 2016-01-17 2 | ================== 3 | 4 | * perf: enable strict mode 5 | 6 | 1.0.0 / 2015-03-01 7 | ================== 8 | 9 | * Add option to only add new descriptors 10 | * Add simple argument validation 11 | * Add jsdoc to source file 12 | 13 | 0.0.2 / 2013-12-14 14 | ================== 15 | 16 | * Move repository to `component` organization 17 | 18 | 0.0.1 / 2013-10-29 19 | ================== 20 | 21 | * Initial release 22 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/qs/lib/formats.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var replace = String.prototype.replace; 4 | var percentTwenties = /%20/g; 5 | 6 | module.exports = { 7 | 'default': 'RFC3986', 8 | formatters: { 9 | RFC1738: function (value) { 10 | return replace.call(value, percentTwenties, '+'); 11 | }, 12 | RFC3986: function (value) { 13 | return value; 14 | } 15 | }, 16 | RFC1738: 'RFC1738', 17 | RFC3986: 'RFC3986' 18 | }; 19 | -------------------------------------------------------------------------------- /reactmvsearch/src/components/Search.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import PropTypes from 'prop-types'; 3 | 4 | const Search = props => ( 5 |
props.onInput(event.target.value)}> 6 | 7 |
8 | ); 9 | 10 | Search.propTypes = { 11 | query : PropTypes.string.isRequired, 12 | onInput : PropTypes.func.isRequired, 13 | placeholder: PropTypes.string 14 | }; 15 | 16 | export default Search; 17 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express/node_modules/qs/lib/formats.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var replace = String.prototype.replace; 4 | var percentTwenties = /%20/g; 5 | 6 | module.exports = { 7 | 'default': 'RFC3986', 8 | formatters: { 9 | RFC1738: function (value) { 10 | return replace.call(value, percentTwenties, '+'); 11 | }, 12 | RFC3986: function (value) { 13 | return value; 14 | } 15 | }, 16 | RFC1738: 'RFC1738', 17 | RFC3986: 'RFC3986' 18 | }; 19 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/http-errors/node_modules/depd/lib/compat/event-listener-count.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * depd 3 | * Copyright(c) 2015 Douglas Christopher Wilson 4 | * MIT Licensed 5 | */ 6 | 7 | 'use strict' 8 | 9 | /** 10 | * Module exports. 11 | * @public 12 | */ 13 | 14 | module.exports = eventListenerCount 15 | 16 | /** 17 | * Get the count of listeners on an event emitter of a specific type. 18 | */ 19 | 20 | function eventListenerCount (emitter, type) { 21 | return emitter.listeners(type).length 22 | } 23 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/utils-merge/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Merge object b with object a. 3 | * 4 | * var a = { foo: 'bar' } 5 | * , b = { bar: 'baz' }; 6 | * 7 | * merge(a, b); 8 | * // => { foo: 'bar', bar: 'baz' } 9 | * 10 | * @param {Object} a 11 | * @param {Object} b 12 | * @return {Object} 13 | * @api public 14 | */ 15 | 16 | exports = module.exports = function(a, b){ 17 | if (a && b) { 18 | for (var key in b) { 19 | a[key] = b[key]; 20 | } 21 | } 22 | return a; 23 | }; 24 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/setprototypeof/README.md: -------------------------------------------------------------------------------- 1 | # Polyfill for `Object.setPrototypeOf` 2 | 3 | A simple cross platform implementation to set the prototype of an instianted object. Supports all modern browsers and at least back to IE8. 4 | 5 | ## Usage: 6 | 7 | ``` 8 | $ npm install --save setprototypeof 9 | ``` 10 | 11 | ```javascript 12 | var setPrototypeOf = require('setprototypeof'); 13 | 14 | var obj = {}; 15 | setPrototypeOf(obj, { 16 | foo: function() { 17 | return 'bar'; 18 | } 19 | }); 20 | obj.foo(); // bar 21 | ``` 22 | -------------------------------------------------------------------------------- /dry-switching-with-css/.idea/dry-switching-with-css.iml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | -------------------------------------------------------------------------------- /geekbook/server/app.js: -------------------------------------------------------------------------------- 1 | const Koa = require('koa') 2 | const app = new Koa() 3 | const debug = require('debug')('koa-weapp-demo') 4 | const response = require('./middlewares/response') 5 | const bodyParser = require('koa-bodyparser') 6 | const config = require('./config') 7 | 8 | // 使用响应处理中间件 9 | app.use(response) 10 | 11 | // 解析请求体 12 | app.use(bodyParser()) 13 | 14 | // 引入路由分发 15 | const router = require('./routes') 16 | app.use(router.routes()) 17 | 18 | // 启动程序,监听端口 19 | app.listen(config.port, () => debug(`listening on port ${config.port}`)) 20 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/ios/toilet/AppDelegate.h: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @interface AppDelegate : UIResponder 13 | 14 | @property (nonatomic, strong) UIWindow *window; 15 | 16 | @end 17 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express-session/node_modules/utils-merge/index.js: -------------------------------------------------------------------------------- 1 | /** 2 | * Merge object b with object a. 3 | * 4 | * var a = { foo: 'bar' } 5 | * , b = { bar: 'baz' }; 6 | * 7 | * merge(a, b); 8 | * // => { foo: 'bar', bar: 'baz' } 9 | * 10 | * @param {Object} a 11 | * @param {Object} b 12 | * @return {Object} 13 | * @api public 14 | */ 15 | 16 | exports = module.exports = function(a, b){ 17 | if (a && b) { 18 | for (var key in b) { 19 | a[key] = b[key]; 20 | } 21 | } 22 | return a; 23 | }; 24 | -------------------------------------------------------------------------------- /geekbook/build/vue-loader.conf.js: -------------------------------------------------------------------------------- 1 | var utils = require('./utils') 2 | var config = require('../config') 3 | // var isProduction = process.env.NODE_ENV === 'production' 4 | // for mp 5 | var isProduction = true 6 | 7 | module.exports = { 8 | loaders: utils.cssLoaders({ 9 | sourceMap: isProduction 10 | ? config.build.productionSourceMap 11 | : config.dev.cssSourceMap, 12 | extract: isProduction 13 | }), 14 | transformToRequire: { 15 | video: 'src', 16 | source: 'src', 17 | img: 'src', 18 | image: 'xlink:href' 19 | } 20 | } 21 | -------------------------------------------------------------------------------- /damopotal/README.md: -------------------------------------------------------------------------------- 1 | # damopotal 2 | 3 | > A Vue.js project 4 | 5 | ## Build Setup 6 | 7 | ``` bash 8 | # install dependencies 9 | npm install 10 | 11 | # serve with hot reload at localhost:8080 12 | npm run dev 13 | 14 | # build for production with minification 15 | npm run build 16 | 17 | # build for production and view the bundle analyzer report 18 | npm run build --report 19 | ``` 20 | 21 | For a detailed explanation on how things work, check out the [guide](http://vuejs-templates.github.io/webpack/) and [docs for vue-loader](http://vuejs.github.io/vue-loader). 22 | -------------------------------------------------------------------------------- /skeleton-demo/index.html: -------------------------------------------------------------------------------- 1 | 11 | 12 | 13 | 14 | 15 | 骨架屏-demo 16 | 17 | 18 | 19 |
20 | 21 | 22 | -------------------------------------------------------------------------------- /Pseudo-classes/P1.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 |

Before

12 |

Animate/transition box-shadow 可以使用box-shadow属性来实现盒子阴影效果,但重绘消耗较多

13 |
14 |
15 |
16 |

After

17 |

通过修改伪元素的透明度来实现同样的效果,没有重绘消耗

18 |
19 | 20 | 21 | -------------------------------------------------------------------------------- /Pseudo-classes/README.md: -------------------------------------------------------------------------------- 1 | 2 | ## 从青铜到王者10个css3伪类使用技巧和运用 3 | ###### 包含以下几点应用: 4 | 5 | * 青铜-1、伪类实现盒子阴影 6 | * 青铜-2、伪元素:before实现的面包屑导航栏 7 | * 青铜-3、伪元素实现悬停时按钮填充和边界浮动动画 8 | * 青铜-4、伪类after实现的三角箭头 9 | * 青铜-5、伪类after实现的图片箭头 10 | * 青铜-6、伪元素实现带角度的底部边界(倾斜的边界) 11 | * 王者-1、伪元素和平移(translate)变换实现的提示框 12 | * 王者-2、使用CSS3伪元素实现的自动打字动画 13 | * 王者-3、CSS3 伪元素构建的文章水印背景 14 | * 王者-4、CSS3 用伪元素做页码摘要 15 | 16 | ###### 查看:只需下载,然后打开index.html,查看列表 17 | 18 | ###### [代码地址](https://github.com/HongqingCao/MyCode/tree/master/Pseudo-classes) 19 | 20 | ###### [掘金文章地址](https://juejin.im/post/5b6d0c5cf265da0f504a837f) 21 | 22 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/qs/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 4 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | max_line_length = 140 11 | 12 | [test/*] 13 | max_line_length = off 14 | 15 | [*.md] 16 | max_line_length = off 17 | 18 | [*.json] 19 | max_line_length = off 20 | 21 | [Makefile] 22 | max_line_length = off 23 | 24 | [CHANGELOG.md] 25 | indent_style = space 26 | indent_size = 2 27 | 28 | [LICENSE] 29 | indent_size = 2 30 | max_line_length = off 31 | -------------------------------------------------------------------------------- /dry-switching-with-css/README.md: -------------------------------------------------------------------------------- 1 | 2 | ### CSS变量在前端复杂布局和交互上的探索 3 | 检索和响应信息图源码 4 | 5 | ### 运行方式 6 | 下载代码,直接用浏览器打开index.html即可浏览效果 7 | 8 | ###### 检索demo代码地址: https://github.com/HongqingCao/MyCode/tree/master/dry-switching-with-css/query-demo 9 | 10 | ###### ![实例效果](https://github.com/HongqingCao/MyCode/blob/master/dry-switching-with-css/query.gif) 11 | 12 | 13 | 14 | ###### 响应信息图demo代码地址: https://github.com/HongqingCao/MyCode/tree/master/dry-switching-with-css/infographic-demo 15 | 16 | ###### ![实例效果](https://github.com/HongqingCao/MyCode/blob/master/dry-switching-with-css/info.gif) 17 | -------------------------------------------------------------------------------- /Pseudo-classes/P4.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 |
13 |
14 |
15 |
16 | 17 |
18 | 19 | 20 | -------------------------------------------------------------------------------- /Node-Express4/db.js: -------------------------------------------------------------------------------- 1 | const repos = require('./data'); 2 | const fs = require('fs'); 3 | 4 | module.exports ={ 5 | //持久化写入,保存 6 | store(){ 7 | fs.writeFileSync(__dirname+'/data.json', JSON.stringify(repos));//_dirname获得当前文件所在目录的完整目录名 8 | }, 9 | get(index){ 10 | return repos[index]; 11 | }, 12 | get list(){ 13 | return repos; 14 | }, 15 | add(article){ 16 | repos.push(article); 17 | this.store(); 18 | }, 19 | del(index){ 20 | repos.splice(index,1); 21 | this.store(); 22 | }, 23 | update(index,newArticle){ 24 | repos.splice(index,1,newArticle); 25 | this.store(); 26 | } 27 | } -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/content-type/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.0.4 / 2017-09-11 2 | ================== 3 | 4 | * perf: skip parameter parsing when no parameters 5 | 6 | 1.0.3 / 2017-09-10 7 | ================== 8 | 9 | * perf: remove argument reassignment 10 | 11 | 1.0.2 / 2016-05-09 12 | ================== 13 | 14 | * perf: enable strict mode 15 | 16 | 1.0.1 / 2015-02-13 17 | ================== 18 | 19 | * Improve missing `Content-Type` header error message 20 | 21 | 1.0.0 / 2015-02-01 22 | ================== 23 | 24 | * Initial implementation, derived from `media-typer@0.3.0` 25 | -------------------------------------------------------------------------------- /geekbook/server/tools.md: -------------------------------------------------------------------------------- 1 | # 腾讯云小程序解决方案 Demo 工具使用文档 2 | 3 | 本文件夹下的脚本为腾讯云小程序解决方案 Demo 配套的工具,旨在让用户方便快捷的使用并创建小程序的开发环境。 4 | 5 | 工具包括: 6 | 7 | - [数据库初始化工具](#数据库初始化工具) 8 | 9 | ## 数据库初始化工具 10 | 11 | 本工具是为了让用户快速的按照腾讯云制定的数据库 schema 创建符合 SDK 标准的数据库结构。 12 | 13 | _**注意**:本工具支持的 MySQL 版本为 **5.7**,并且需提前在数据库中创建名为 `cAuth` 的数据库。`charset` 设置为 `utf8mb4`。_ 14 | 15 | 快速使用: 16 | 17 | ```bash 18 | npm run initdb 19 | ``` 20 | 21 | 或直接执行 `tools` 目录下的 `initdb.js` 文件: 22 | 23 | ```bash 24 | # 请保证已经执行了 npm install 安装了所需要的依赖 25 | node tools/initdb.js 26 | ``` 27 | 28 | 我们提供了初始化的 SQL 文件,你也可以用其他数据库工具(如 Navicat)直接导入 SQL 文件。 29 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express/node_modules/qs/.editorconfig: -------------------------------------------------------------------------------- 1 | root = true 2 | 3 | [*] 4 | indent_style = space 5 | indent_size = 4 6 | end_of_line = lf 7 | charset = utf-8 8 | trim_trailing_whitespace = true 9 | insert_final_newline = true 10 | max_line_length = 140 11 | 12 | [test/*] 13 | max_line_length = off 14 | 15 | [*.md] 16 | max_line_length = off 17 | 18 | [*.json] 19 | max_line_length = off 20 | 21 | [Makefile] 22 | max_line_length = off 23 | 24 | [CHANGELOG.md] 25 | indent_style = space 26 | indent_size = 2 27 | 28 | [LICENSE] 29 | indent_size = 2 30 | max_line_length = off 31 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/methods/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.1.2 / 2016-01-17 2 | ================== 3 | 4 | * perf: enable strict mode 5 | 6 | 1.1.1 / 2014-12-30 7 | ================== 8 | 9 | * Improve `browserify` support 10 | 11 | 1.1.0 / 2014-07-05 12 | ================== 13 | 14 | * Add `CONNECT` method 15 | 16 | 1.0.1 / 2014-06-02 17 | ================== 18 | 19 | * Fix module to work with harmony transform 20 | 21 | 1.0.0 / 2014-05-08 22 | ================== 23 | 24 | * Add `PURGE` method 25 | 26 | 0.1.0 / 2013-10-28 27 | ================== 28 | 29 | * Add `http.METHODS` support 30 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/media-typer/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.3.0 / 2014-09-07 2 | ================== 3 | 4 | * Support Node.js 0.6 5 | * Throw error when parameter format invalid on parse 6 | 7 | 0.2.0 / 2014-06-18 8 | ================== 9 | 10 | * Add `typer.format()` to format media types 11 | 12 | 0.1.0 / 2014-06-17 13 | ================== 14 | 15 | * Accept `req` as argument to `parse` 16 | * Accept `res` as argument to `parse` 17 | * Parse media type with extra LWS between type and first parameter 18 | 19 | 0.0.0 / 2014-06-13 20 | ================== 21 | 22 | * Initial implementation 23 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/ios/toilet/main.m: -------------------------------------------------------------------------------- 1 | /** 2 | * Copyright (c) 2015-present, Facebook, Inc. 3 | * All rights reserved. 4 | * 5 | * This source code is licensed under the BSD-style license found in the 6 | * LICENSE file in the root directory of this source tree. An additional grant 7 | * of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import "AppDelegate.h" 13 | 14 | int main(int argc, char * argv[]) { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /geekbook/server/controllers/addcomment.js: -------------------------------------------------------------------------------- 1 | const {mysql} = require('../qcloud') 2 | 3 | module.exports = async (ctx) => { 4 | const {bookid, comment, openid, location, phone} = ctx.request.body 5 | console.log(bookid, comment, openid, location, phone) 6 | try { 7 | await mysql('comments').insert({bookid, comment, openid, location, phone}) 8 | ctx.state.data = { 9 | msg: 'success' 10 | } 11 | } catch (e) { 12 | ctx.state = { 13 | code: -1, 14 | data: { 15 | msg: '评论失败:' + e.sqlMessage 16 | } 17 | } 18 | } 19 | } -------------------------------------------------------------------------------- /heishenhua/new_file.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 31 | 32 | 33 |
34 | 35 | 36 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express/node_modules/qs/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "complexity": [2, 28], 8 | "consistent-return": 1, 9 | "id-length": [2, { "min": 1, "max": 25, "properties": "never" }], 10 | "indent": [2, 4], 11 | "max-params": [2, 12], 12 | "max-statements": [2, 45], 13 | "no-continue": 1, 14 | "no-magic-numbers": 0, 15 | "no-restricted-syntax": [2, "BreakStatement", "DebuggerStatement", "ForInStatement", "LabeledStatement", "WithStatement"], 16 | "operator-linebreak": [2, "before"], 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /damopotal/build/vue-loader.conf.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const utils = require('./utils') 3 | const config = require('../config') 4 | const isProduction = process.env.NODE_ENV === 'production' 5 | const sourceMapEnabled = isProduction 6 | ? config.build.productionSourceMap 7 | : config.dev.cssSourceMap 8 | 9 | module.exports = { 10 | loaders: utils.cssLoaders({ 11 | sourceMap: sourceMapEnabled, 12 | extract: isProduction 13 | }), 14 | cssSourceMap: sourceMapEnabled, 15 | cacheBusting: config.dev.cacheBusting, 16 | transformToRequire: { 17 | video: ['src', 'poster'], 18 | source: 'src', 19 | img: 'src', 20 | image: 'xlink:href' 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /VueSliderShow/build/vue-loader.conf.js: -------------------------------------------------------------------------------- 1 | 'use strict' 2 | const utils = require('./utils') 3 | const config = require('../config') 4 | const isProduction = process.env.NODE_ENV === 'production' 5 | const sourceMapEnabled = isProduction 6 | ? config.build.productionSourceMap 7 | : config.dev.cssSourceMap 8 | 9 | module.exports = { 10 | loaders: utils.cssLoaders({ 11 | sourceMap: sourceMapEnabled, 12 | extract: isProduction 13 | }), 14 | cssSourceMap: sourceMapEnabled, 15 | cacheBusting: config.dev.cacheBusting, 16 | transformToRequire: { 17 | video: ['src', 'poster'], 18 | source: 'src', 19 | img: 'src', 20 | image: 'xlink:href' 21 | } 22 | } 23 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/qs/.eslintrc: -------------------------------------------------------------------------------- 1 | { 2 | "root": true, 3 | 4 | "extends": "@ljharb", 5 | 6 | "rules": { 7 | "complexity": [2, 28], 8 | "consistent-return": 1, 9 | "func-name-matching": 0, 10 | "id-length": [2, { "min": 1, "max": 25, "properties": "never" }], 11 | "indent": [2, 4], 12 | "max-params": [2, 12], 13 | "max-statements": [2, 45], 14 | "no-continue": 1, 15 | "no-magic-numbers": 0, 16 | "no-restricted-syntax": [2, "BreakStatement", "DebuggerStatement", "ForInStatement", "LabeledStatement", "WithStatement"], 17 | "operator-linebreak": [2, "before"], 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/ipaddr.js/bower.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "ipaddr.js", 3 | "version": "1.4.0", 4 | "homepage": "https://github.com/whitequark/ipaddr.js", 5 | "authors": [ 6 | "whitequark " 7 | ], 8 | "description": "IP address manipulation library in JavaScript (CoffeeScript, actually)", 9 | "main": "lib/ipaddr.js", 10 | "moduleType": [ 11 | "globals", 12 | "node" 13 | ], 14 | "keywords": [ 15 | "javscript", 16 | "ip", 17 | "address", 18 | "ipv4", 19 | "ipv6" 20 | ], 21 | "license": "MIT", 22 | "ignore": [ 23 | "**/.*", 24 | "node_modules", 25 | "bower_components", 26 | "test", 27 | "tests" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /geekbook/README.md: -------------------------------------------------------------------------------- 1 | # 极客图书小程序 2 | 3 | 采用mpvue配合小程序原生API以及原生组件完成前端开发,Koa2中件间组合mysql完成后端开发独立完成全栈开发图书小程序。实现了个人中心、添加图书(扫二维码)、图书列表、图书详情、评论模块、评论列表等功能 4 | 5 | 6 | [源码地址](https://github.com/HongqingCao/MyCode/tree/master/geekbook) 7 | 8 | ###### ![实例效果](https://user-gold-cdn.xitu.io/2018/8/9/1651ebea003e760b?w=374&h=666&f=gif&s=5053827) 9 | 10 | 11 | ## 前台: 12 | #### Install 13 | ``` bash 14 | npm install 15 | ``` 16 | 17 | #### 运行 18 | ``` bash 19 | npm run dev 20 | ``` 21 | 22 | ## 服务端:(server文件夹) 23 | #### Install 24 | ``` bash 25 | npm install 26 | ``` 27 | 28 | #### 运行 29 | ``` bash 30 | npm run dev 31 | ``` 32 | 33 | 34 | ### 说明: 35 | 36 | 1. 小程序安装环境和使用在这里不多说明 37 | 38 | 39 | 40 | ## License 41 | 42 | [MIT](LICENSE) 43 | 44 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "toilet", 3 | "version": "0.0.1", 4 | "private": true, 5 | "scripts": { 6 | "start": "node node_modules/react-native/local-cli/cli.js start", 7 | "test": "jest" 8 | }, 9 | "dependencies": { 10 | "react": "16.3.0-alpha.1", 11 | "react-native": "0.54.4", 12 | "react-native-scrollable-tab-view": "^0.8.0", 13 | "react-native-tab-navigator": "^0.3.4", 14 | "react-native-vector-icons": "^4.5.0" 15 | }, 16 | "devDependencies": { 17 | "babel-jest": "22.4.3", 18 | "babel-preset-react-native": "2.1.0", 19 | "jest": "22.4.3", 20 | "react-test-renderer": "16.3.0-alpha.1" 21 | }, 22 | "jest": { 23 | "preset": "react-native" 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /geekbook/src/components/Rate.vue: -------------------------------------------------------------------------------- 1 | 9 | 23 | 37 | 38 | -------------------------------------------------------------------------------- /geekbook/project.config.json: -------------------------------------------------------------------------------- 1 | { 2 | "description": "项目配置文件。", 3 | "setting": { 4 | "urlCheck": false, 5 | "es6": false, 6 | "postcss": true, 7 | "minified": true, 8 | "newFeature": true 9 | }, 10 | "miniprogramRoot": "./dist/", 11 | "qcloudRoot": "./server/", 12 | "compileType": "miniprogram", 13 | "appid": "wx3f6999f476d55c69", 14 | "projectname": "geekbook", 15 | "condition": { 16 | "search": { 17 | "current": -1, 18 | "list": [] 19 | }, 20 | "conversation": { 21 | "current": -1, 22 | "list": [] 23 | }, 24 | "plugin": { 25 | "current": -1, 26 | "list": [] 27 | }, 28 | "game": { 29 | "currentL": -1, 30 | "list": [] 31 | }, 32 | "miniprogram": { 33 | "current": -1, 34 | "list": [] 35 | } 36 | } 37 | } -------------------------------------------------------------------------------- /.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | VueSliderShow 4 | 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | 19 | 1526140464398 20 | 21 | 26 22 | 23 | org.eclipse.ui.ide.multiFilter 24 | 1.0-name-matches-false-false-node_modules 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android_views/setting/about.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { 3 | StyleSheet, 4 | Text, 5 | View, 6 | Image, 7 | ScrollView 8 | } from 'react-native'; 9 | 10 | import Util from './../util'; 11 | 12 | class About extends Component{ 13 | render(){ 14 | return( 15 | 16 | 如果问题,请联系: wlhmyit@126.com 17 | 18 | ); 19 | } 20 | } 21 | 22 | const styles = StyleSheet.create({ 23 | container:{ 24 | flex: 1 25 | }, 26 | text:{ 27 | fontSize:16, 28 | fontWeight:'300', 29 | marginBottom:15, 30 | marginLeft:10, 31 | marginTop:3 32 | } 33 | }); 34 | 35 | module.exports = About; -------------------------------------------------------------------------------- /geekbook/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | small-app 4 | 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | 19 | 1528300845243 20 | 21 | 26 22 | 23 | org.eclipse.ui.ide.multiFilter 24 | 1.0-name-matches-false-false-node_modules 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Toilet-React-native/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | toilet 4 | 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | 19 | 1521460095875 20 | 21 | 26 22 | 23 | org.eclipse.ui.ide.multiFilter 24 | 1.0-name-matches-false-false-node_modules 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /VeeValidate/css/common-stylefix.css.map: -------------------------------------------------------------------------------- 1 | { 2 | "version": 3, 3 | "file": "common-stylefix.css", 4 | "sources": [ 5 | "common-stylefix.scss" 6 | ], 7 | "mappings": "AAAA,AAAA,IAAI,AAAC,CACD,MAAM,CAAE,CAAE,CACV,OAAO,CAAE,CAAE,CACd,CAED,AAAA,AAAQ,OAAP,AAAA,CAAS,CACN,UAAU,CAAE,MAAO,CACtB,AAED,AAAA,CAAC,CACD,AAAC,CAAA,AAAA,QAAQ,CACT,AAAC,CAAA,AAAA,OAAO,AAAC,CACL,UAAU,CAAE,UAAW,CAC1B,AAED,AAAA,MAAM,AAAC,CACH,MAAM,CAAE,IAAK,CACb,gBAAgB,CAAE,WAAY,CAC9B,YAAY,CAAE,CAAE,CAChB,WAAW,CAAE,CAAE,CACf,aAAa,CAAE,CAAE,CACjB,cAAc,CAAE,CAAE,CACrB,AAED,AAAA,CAAC,AAAC,CACE,eAAe,CAAE,eAAgB,CACpC,AAGD,AAAA,EAAE,AAAC,CACC,MAAM,CAAE,CAAE,CACV,OAAO,CAAE,CAAE,CACX,UAAU,CAAE,IAAK,CACpB,AAGD,AAAA,MAAM,AAAC,CACH,OAAO,CAAE,IAAK,CACjB,AAGD,AAAA,KAAK,CACL,AAAA,QAAQ,AAAC,CACL,OAAO,CAAE,IAAK,CACjB", 8 | "names": [] 9 | } -------------------------------------------------------------------------------- /VueSliderShow/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | VueSliderShow 4 | 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | 19 | 1526140464398 20 | 21 | 26 22 | 23 | org.eclipse.ui.ide.multiFilter 24 | 1.0-name-matches-false-false-node_modules 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /reactmvsearch/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | reactmvsearch 4 | 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | 19 | 1533958271579 20 | 21 | 26 22 | 23 | org.eclipse.ui.ide.multiFilter 24 | 1.0-name-matches-false-false-node_modules 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/ipaddr.js/Cakefile: -------------------------------------------------------------------------------- 1 | fs = require 'fs' 2 | CoffeeScript = require 'coffee-script' 3 | nodeunit = require 'nodeunit' 4 | UglifyJS = require 'uglify-js' 5 | 6 | task 'build', 'build the JavaScript files from CoffeeScript source', build = (cb) -> 7 | source = fs.readFileSync 'src/ipaddr.coffee', 'utf-8' 8 | fs.writeFileSync 'lib/ipaddr.js', CoffeeScript.compile source.toString() 9 | 10 | invoke 'test' 11 | invoke 'compress' 12 | 13 | task 'test', 'run the bundled tests', (cb) -> 14 | nodeunit.reporters.default.run ['test'] 15 | 16 | task 'compress', 'uglify the resulting javascript', (cb) -> 17 | source = fs.readFileSync 'lib/ipaddr.js', 'utf-8' 18 | fs.writeFileSync('ipaddr.min.js', UglifyJS.minify(source).code) 19 | -------------------------------------------------------------------------------- /reactmvsearch/src/components/Movie.js: -------------------------------------------------------------------------------- 1 | import React from 'react'; 2 | import PropTypes from 'prop-types'; 3 | 4 | const Movie = props => ( 5 |
6 |
7 | 8 |
9 | {props.vote_average} 10 |
11 |

{props.title}

12 |
13 |
14 | ); 15 | 16 | Movie.propTypes = { 17 | id : PropTypes.number.isRequired, 18 | title : PropTypes.string.isRequired, 19 | poster_path: PropTypes.string, 20 | vote_average: PropTypes.number, 21 | }; 22 | 23 | export default Movie; -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/build.gradle: -------------------------------------------------------------------------------- 1 | // Top-level build file where you can add configuration options common to all sub-projects/modules. 2 | 3 | buildscript { 4 | repositories { 5 | jcenter() 6 | } 7 | dependencies { 8 | classpath 'com.android.tools.build:gradle:2.2.3' 9 | 10 | // NOTE: Do not place your application dependencies here; they belong 11 | // in the individual module build.gradle files 12 | } 13 | } 14 | 15 | allprojects { 16 | repositories { 17 | mavenLocal() 18 | jcenter() 19 | maven { 20 | // All of React Native (JS, Obj-C sources, Android binaries) is installed from npm 21 | url "$rootDir/../node_modules/react-native/android" 22 | } 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /dry-switching-with-css/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | dry-switching-with-css 4 | 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | 19 | 1545497825944 20 | 21 | 26 22 | 23 | org.eclipse.ui.ide.multiFilter 24 | 1.0-name-matches-false-false-node_modules 25 | 26 | 27 | 28 | 29 | -------------------------------------------------------------------------------- /geekbook/server/controllers/index.js: -------------------------------------------------------------------------------- 1 | const _ = require('lodash') 2 | const fs = require('fs') 3 | const path = require('path') 4 | 5 | /** 6 | * 映射 d 文件夹下的文件为模块 7 | */ 8 | const mapDir = d => { 9 | const tree = {} 10 | 11 | // 获得当前文件夹下的所有的文件夹和文件 12 | const [dirs, files] = _(fs.readdirSync(d)).partition(p => fs.statSync(path.join(d, p)).isDirectory()) 13 | 14 | // 映射文件夹 15 | dirs.forEach(dir => { 16 | tree[dir] = mapDir(path.join(d, dir)) 17 | }) 18 | 19 | // 映射文件 20 | files.forEach(file => { 21 | if (path.extname(file) === '.js') { 22 | tree[path.basename(file, '.js')] = require(path.join(d, file)) 23 | } 24 | }) 25 | 26 | return tree 27 | } 28 | 29 | // 默认导出当前文件夹下的映射 30 | module.exports = mapDir(path.join(__dirname)) 31 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/inherits/inherits_browser.js: -------------------------------------------------------------------------------- 1 | if (typeof Object.create === 'function') { 2 | // implementation from standard node.js 'util' module 3 | module.exports = function inherits(ctor, superCtor) { 4 | ctor.super_ = superCtor 5 | ctor.prototype = Object.create(superCtor.prototype, { 6 | constructor: { 7 | value: ctor, 8 | enumerable: false, 9 | writable: true, 10 | configurable: true 11 | } 12 | }); 13 | }; 14 | } else { 15 | // old school shim for old browsers 16 | module.exports = function inherits(ctor, superCtor) { 17 | ctor.super_ = superCtor 18 | var TempCtor = function () {} 19 | TempCtor.prototype = superCtor.prototype 20 | ctor.prototype = new TempCtor() 21 | ctor.prototype.constructor = ctor 22 | } 23 | } 24 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/setprototypeof/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2015, Wes Todd 2 | 3 | Permission to use, copy, modify, and/or distribute this software for any 4 | purpose with or without fee is hereby granted, provided that the above 5 | copyright notice and this permission notice appear in all copies. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES 8 | WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF 9 | MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY 10 | SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES 11 | WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION 12 | OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 13 | CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 14 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/ios/toilet/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "29x29", 11 | "scale" : "3x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "40x40", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "iphone", 20 | "size" : "40x40", 21 | "scale" : "3x" 22 | }, 23 | { 24 | "idiom" : "iphone", 25 | "size" : "60x60", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "iphone", 30 | "size" : "60x60", 31 | "scale" : "3x" 32 | } 33 | ], 34 | "info" : { 35 | "version" : 1, 36 | "author" : "xcode" 37 | } 38 | } -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/utils-merge/README.md: -------------------------------------------------------------------------------- 1 | # utils-merge 2 | 3 | Merges the properties from a source object into a destination object. 4 | 5 | ## Install 6 | 7 | $ npm install utils-merge 8 | 9 | ## Usage 10 | 11 | ```javascript 12 | var a = { foo: 'bar' } 13 | , b = { bar: 'baz' }; 14 | 15 | merge(a, b); 16 | // => { foo: 'bar', bar: 'baz' } 17 | ``` 18 | 19 | ## Tests 20 | 21 | $ npm install 22 | $ npm test 23 | 24 | [![Build Status](https://secure.travis-ci.org/jaredhanson/utils-merge.png)](http://travis-ci.org/jaredhanson/utils-merge) 25 | 26 | ## Credits 27 | 28 | - [Jared Hanson](http://github.com/jaredhanson) 29 | 30 | ## License 31 | 32 | [The MIT License](http://opensource.org/licenses/MIT) 33 | 34 | Copyright (c) 2013 Jared Hanson <[http://jaredhanson.net/](http://jaredhanson.net/)> 35 | -------------------------------------------------------------------------------- /damopotal/src/App.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 12 | 13 | 44 | -------------------------------------------------------------------------------- /geekbook/server/controllers/bookdetail.js: -------------------------------------------------------------------------------- 1 | 2 | const {mysql} = require('../qcloud') 3 | 4 | module.exports = async (ctx)=>{ 5 | const {id} = ctx.request.query 6 | 7 | const detail = await mysql('books') 8 | .select('books.*', 'cSessionInfo.user_info') 9 | .join('cSessionInfo', 'books.openid', 'cSessionInfo.open_id') 10 | .where('id', id) 11 | .first() 12 | 13 | const info = JSON.parse(detail.user_info) 14 | ctx.state.data = Object.assign({}, detail, { 15 | tags: detail.tags.split(','), 16 | summary: detail.summary.split('\n'), 17 | user_info: { 18 | name: info.nickName, 19 | image: info.avatarUrl 20 | } 21 | }) 22 | 23 | await mysql('books') 24 | .where('id',id) 25 | .increment('count',1) 26 | } -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/inherits/LICENSE: -------------------------------------------------------------------------------- 1 | The ISC License 2 | 3 | Copyright (c) Isaac Z. Schlueter 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any 6 | purpose with or without fee is hereby granted, provided that the above 7 | copyright notice and this permission notice appear in all copies. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH 10 | REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND 11 | FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, 12 | INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM 13 | LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR 14 | OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR 15 | PERFORMANCE OF THIS SOFTWARE. 16 | 17 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android_views/toiletPage.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { 3 | StyleSheet, 4 | Text, 5 | View, 6 | WebView 7 | } from 'react-native'; 8 | 9 | import ComWebView from './comWebView'; 10 | 11 | class ToiletPage extends Component{ 12 | render() { 13 | return ( 14 | 15 | 16 | 17 | ) 18 | } 19 | } 20 | 21 | 22 | const styles = StyleSheet.create({ 23 | container: { 24 | flex: 1, 25 | // justifyContent: 'center', 26 | // alignItems: 'center', 27 | // backgroundColor: '#F5FCFF', 28 | }, 29 | welcome: { 30 | fontSize: 20, 31 | textAlign: 'center', 32 | margin: 10, 33 | }, 34 | }); 35 | 36 | 37 | module.exports = ToiletPage; -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/iconv-lite/encodings/index.js: -------------------------------------------------------------------------------- 1 | "use strict"; 2 | 3 | // Update this array if you add/rename/remove files in this directory. 4 | // We support Browserify by skipping automatic module discovery and requiring modules directly. 5 | var modules = [ 6 | require("./internal"), 7 | require("./utf16"), 8 | require("./utf7"), 9 | require("./sbcs-codec"), 10 | require("./sbcs-data"), 11 | require("./sbcs-data-generated"), 12 | require("./dbcs-codec"), 13 | require("./dbcs-data"), 14 | ]; 15 | 16 | // Put all encoding/alias/codec definitions to single object and export it. 17 | for (var i = 0; i < modules.length; i++) { 18 | var module = modules[i]; 19 | for (var enc in module) 20 | if (Object.prototype.hasOwnProperty.call(module, enc)) 21 | exports[enc] = module[enc]; 22 | } 23 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android_views/weather.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { 3 | StyleSheet, 4 | Text, 5 | View, 6 | WebView 7 | } from 'react-native'; 8 | 9 | import ComWebView from './comWebView'; 10 | 11 | class Weather extends Component{ 12 | render() { 13 | return ( 14 | 15 | 16 | 17 | ) 18 | } 19 | } 20 | 21 | 22 | const styles = StyleSheet.create({ 23 | container: { 24 | flex: 1, 25 | // justifyContent: 'center', 26 | // alignItems: 'center', 27 | // backgroundColor: '#F5FCFF', 28 | }, 29 | welcome: { 30 | fontSize: 20, 31 | textAlign: 'center', 32 | margin: 10, 33 | }, 34 | }); 35 | 36 | 37 | module.exports = Weather; -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/crc/lib/crc1.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var _buffer = require('buffer'); 4 | 5 | var _create_buffer = require('./create_buffer'); 6 | 7 | var _create_buffer2 = _interopRequireDefault(_create_buffer); 8 | 9 | var _define_crc = require('./define_crc'); 10 | 11 | var _define_crc2 = _interopRequireDefault(_define_crc); 12 | 13 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 14 | 15 | module.exports = (0, _define_crc2.default)('crc1', function (buf, previous) { 16 | if (!_buffer.Buffer.isBuffer(buf)) buf = (0, _create_buffer2.default)(buf); 17 | 18 | var crc = ~~previous; 19 | var accum = 0; 20 | 21 | for (var index = 0; index < buf.length; index++) { 22 | var byte = buf[index]; 23 | accum += byte; 24 | } 25 | 26 | crc += accum % 256; 27 | return crc % 256; 28 | }); -------------------------------------------------------------------------------- /geekbook/server/middlewares/response.js: -------------------------------------------------------------------------------- 1 | const debug = require('debug')('koa-weapp-demo') 2 | 3 | /** 4 | * 响应处理模块 5 | */ 6 | module.exports = async function (ctx, next) { 7 | try { 8 | // 调用下一个 middleware 9 | await next() 10 | 11 | // 处理响应结果 12 | // 如果直接写入在 body 中,则不作处理 13 | // 如果写在 ctx.body 为空,则使用 state 作为响应 14 | ctx.body = ctx.body ? ctx.body : { 15 | code: ctx.state.code !== undefined ? ctx.state.code : 0, 16 | data: ctx.state.data !== undefined ? ctx.state.data : {} 17 | } 18 | } catch (e) { 19 | // catch 住全局的错误信息 20 | debug('Catch Error: %o', e) 21 | 22 | // 设置状态码为 200 - 服务端错误 23 | ctx.status = 200 24 | 25 | // 输出详细的错误信息 26 | ctx.body = { 27 | code: -1, 28 | error: e && e.message ? e.message : e.toString() 29 | } 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /geekbook/server/controllers/message.js: -------------------------------------------------------------------------------- 1 | const { message: { checkSignature } } = require('../qcloud') 2 | 3 | /** 4 | * 响应 GET 请求(响应微信配置时的签名检查请求) 5 | */ 6 | async function get (ctx, next) { 7 | const { signature, timestamp, nonce, echostr } = ctx.query 8 | if (checkSignature(signature, timestamp, nonce)) ctx.body = echostr 9 | else ctx.body = 'ERR_WHEN_CHECK_SIGNATURE' 10 | } 11 | 12 | async function post (ctx, next) { 13 | // 检查签名,确认是微信发出的请求 14 | const { signature, timestamp, nonce } = ctx.query 15 | if (!checkSignature(signature, timestamp, nonce)) ctx.body = 'ERR_WHEN_CHECK_SIGNATURE' 16 | 17 | /** 18 | * 解析微信发送过来的请求体 19 | * 可查看微信文档:https://mp.weixin.qq.com/debug/wxadoc/dev/api/custommsg/receive.html#接收消息和事件 20 | */ 21 | const body = ctx.request.body 22 | 23 | ctx.body = 'success' 24 | } 25 | 26 | module.exports = { 27 | post, 28 | get 29 | } 30 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/path-to-regexp/History.md: -------------------------------------------------------------------------------- 1 | 0.1.7 / 2015-07-28 2 | ================== 3 | 4 | * Fixed regression with escaped round brackets and matching groups. 5 | 6 | 0.1.6 / 2015-06-19 7 | ================== 8 | 9 | * Replace `index` feature by outputting all parameters, unnamed and named. 10 | 11 | 0.1.5 / 2015-05-08 12 | ================== 13 | 14 | * Add an index property for position in match result. 15 | 16 | 0.1.4 / 2015-03-05 17 | ================== 18 | 19 | * Add license information 20 | 21 | 0.1.3 / 2014-07-06 22 | ================== 23 | 24 | * Better array support 25 | * Improved support for trailing slash in non-ending mode 26 | 27 | 0.1.0 / 2014-03-06 28 | ================== 29 | 30 | * add options.end 31 | 32 | 0.0.2 / 2013-02-10 33 | ================== 34 | 35 | * Update to match current express 36 | * add .license property to component.json 37 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/ios/toiletTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/ios/toilet-tvOSTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | org.reactjs.native.example.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | $(PRODUCT_NAME) 15 | CFBundlePackageType 16 | BNDL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | 24 | 25 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/cookie-signature/History.md: -------------------------------------------------------------------------------- 1 | 1.0.6 / 2015-02-03 2 | ================== 3 | 4 | * use `npm test` instead of `make test` to run tests 5 | * clearer assertion messages when checking input 6 | 7 | 8 | 1.0.5 / 2014-09-05 9 | ================== 10 | 11 | * add license to package.json 12 | 13 | 1.0.4 / 2014-06-25 14 | ================== 15 | 16 | * corrected avoidance of timing attacks (thanks @tenbits!) 17 | 18 | 1.0.3 / 2014-01-28 19 | ================== 20 | 21 | * [incorrect] fix for timing attacks 22 | 23 | 1.0.2 / 2014-01-28 24 | ================== 25 | 26 | * fix missing repository warning 27 | * fix typo in test 28 | 29 | 1.0.1 / 2013-04-15 30 | ================== 31 | 32 | * Revert "Changed underlying HMAC algo. to sha512." 33 | * Revert "Fix for timing attacks on MAC verification." 34 | 35 | 0.0.1 / 2010-01-03 36 | ================== 37 | 38 | * Initial release 39 | -------------------------------------------------------------------------------- /Pseudo-classes/css/P9.css: -------------------------------------------------------------------------------- 1 | body { 2 | font-family: Montserrat; 3 | margin: 0; 4 | background: #eee; 5 | } 6 | p { 7 | font-family: monospace; 8 | } 9 | .content { 10 | width: 400px; 11 | padding: 6rem 4rem 2rem 2rem; 12 | background: #fff; 13 | margin: 0.5rem; 14 | } 15 | .pre-headline { 16 | color: #777; 17 | letter-spacing: 0.1rem; 18 | font-family: monospace; 19 | font-size: 1.25rem; 20 | text-transform: uppercase; 21 | } 22 | h1 { 23 | position: relative; 24 | margin: 0; 25 | font-weight: bold; 26 | letter-spacing: -0.05rem; 27 | line-height: 1; 28 | text-transform: uppercase; 29 | z-index: 10; 30 | } 31 | h1:before { 32 | content: "2018/08"; 33 | font-family: monospace; 34 | font-size: 10rem; 35 | position: absolute; 36 | top: 2rem; 37 | left: -2rem; 38 | z-index: 0; 39 | line-height: 1; 40 | color: rgba(50, 25, 0, 0.1); 41 | } -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/escape-html/Readme.md: -------------------------------------------------------------------------------- 1 | 2 | # escape-html 3 | 4 | Escape string for use in HTML 5 | 6 | ## Example 7 | 8 | ```js 9 | var escape = require('escape-html'); 10 | var html = escape('foo & bar'); 11 | // -> foo & bar 12 | ``` 13 | 14 | ## Benchmark 15 | 16 | ``` 17 | $ npm run-script bench 18 | 19 | > escape-html@1.0.3 bench nodejs-escape-html 20 | > node benchmark/index.js 21 | 22 | 23 | http_parser@1.0 24 | node@0.10.33 25 | v8@3.14.5.9 26 | ares@1.9.0-DEV 27 | uv@0.10.29 28 | zlib@1.2.3 29 | modules@11 30 | openssl@1.0.1j 31 | 32 | 1 test completed. 33 | 2 tests completed. 34 | 3 tests completed. 35 | 36 | no special characters x 19,435,271 ops/sec ±0.85% (187 runs sampled) 37 | single special character x 6,132,421 ops/sec ±0.67% (194 runs sampled) 38 | many special characters x 3,175,826 ops/sec ±0.65% (193 runs sampled) 39 | ``` 40 | 41 | ## License 42 | 43 | MIT -------------------------------------------------------------------------------- /Toilet-React-native/README.md: -------------------------------------------------------------------------------- 1 | # React_Toilet 2 | #react-native 找厕所APP小程序 (安卓版) 3 | 4 | 5 | ## 项目运行 6 | 服务端: 7 | #### npm install 8 | #### npm start 9 | 客户端: 10 | #### npm install 11 | #### react-native start 12 | #### react-native run-android 13 | #### 模拟器(或者真机):adb devices 14 | #### 如果是夜神模拟器要先:adb connect 127.0.0.1:62001 15 | #### 然后摇一摇,设置Debug Server 地址为本ip+端口号 16 | (具体可以参考:https://blog.csdn.net/yubo_725/article/details/73574111) 17 | 18 | 19 | ## 服务端 20 | 21 | 获取几个模块列表服务接口: 22 | 23 | #### /data/read?type=cookies 24 | #### /data/read?type=it 25 | #### /data/read?type=manager 26 | #### /data/read?type=sanwen 27 | 28 | ## 获取首页配置: 29 | 30 | #### /data/read?type=config 31 | 32 | 33 | ## 客户端 34 | 35 | ##### 地图中自动搜索附近2KM以内的卫生间,提供卫生间基础信息,以及路线导航规划。 36 | 37 | #### 文章阅读,包含推荐文章和分类 38 | #### 当地的实时天气 39 | 40 | ###ps:本项目仅用于学习使用 41 | -------------------------------------------------------------------------------- /geekbook/server/controllers/commentlist.js: -------------------------------------------------------------------------------- 1 | const {mysql} = require('../qcloud') 2 | 3 | module.exports = async (ctx) => { 4 | const {bookid, openid} = ctx.request.query 5 | const mysqlSelect = mysql('comments') 6 | .select('comments.*', 'cSessionInfo.user_info') 7 | .join('cSessionInfo', 'comments.openid', 'cSessionInfo.open_id') 8 | let comments 9 | if(bookid){ 10 | // 图书详情也的评论列表 11 | comments = await mysqlSelect.where('bookid',bookid) 12 | }else if(openid){ 13 | // 根据个人的opid筛选 14 | comments = await mysqlSelect.where('openid',openid) 15 | 16 | } 17 | ctx.state.data = { 18 | list: comments.map(v => { 19 | const info = JSON.parse(v.user_info) 20 | 21 | return Object.assign({}, v, { 22 | title: info.nickName, 23 | image: info.avatarUrl 24 | }) 25 | }) 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /geekbook/.eslintrc.js: -------------------------------------------------------------------------------- 1 | // http://eslint.org/docs/user-guide/configuring 2 | 3 | module.exports = { 4 | root: true, 5 | parser: 'babel-eslint', 6 | parserOptions: { 7 | sourceType: 'module' 8 | }, 9 | env: { 10 | browser: false, 11 | node: true, 12 | es6: true 13 | }, 14 | // https://github.com/standard/standard/blob/master/docs/RULES-en.md 15 | extends: 'standard', 16 | // required to lint *.vue files 17 | plugins: [ 18 | 'html' 19 | ], 20 | // add your custom rules here 21 | 'rules': { 22 | // allow paren-less arrow functions 23 | 'arrow-parens': 0, 24 | // allow async-await 25 | 'generator-star-spacing': 0, 26 | // allow debugger during development 27 | 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0 28 | }, 29 | globals: { 30 | App: true, 31 | Page: true, 32 | wx: true, 33 | getApp: true, 34 | getPage: true, 35 | requirePlugin: true 36 | } 37 | } 38 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/gradle.properties: -------------------------------------------------------------------------------- 1 | # Project-wide Gradle settings. 2 | 3 | # IDE (e.g. Android Studio) users: 4 | # Gradle settings configured through the IDE *will override* 5 | # any settings specified in this file. 6 | 7 | # For more details on how to configure your build environment visit 8 | # http://www.gradle.org/docs/current/userguide/build_environment.html 9 | 10 | # Specifies the JVM arguments used for the daemon process. 11 | # The setting is particularly useful for tweaking memory settings. 12 | # Default value: -Xmx10248m -XX:MaxPermSize=256m 13 | # org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8 14 | 15 | # When configured, Gradle will run in incubating parallel mode. 16 | # This option should only be used with decoupled projects. More details, visit 17 | # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects 18 | # org.gradle.parallel=true 19 | 20 | android.useDeprecatedNdk=true 21 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/vary/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.1.2 / 2017-09-23 2 | ================== 3 | 4 | * perf: improve header token parsing speed 5 | 6 | 1.1.1 / 2017-03-20 7 | ================== 8 | 9 | * perf: hoist regular expression 10 | 11 | 1.1.0 / 2015-09-29 12 | ================== 13 | 14 | * Only accept valid field names in the `field` argument 15 | - Ensures the resulting string is a valid HTTP header value 16 | 17 | 1.0.1 / 2015-07-08 18 | ================== 19 | 20 | * Fix setting empty header from empty `field` 21 | * perf: enable strict mode 22 | * perf: remove argument reassignments 23 | 24 | 1.0.0 / 2014-08-10 25 | ================== 26 | 27 | * Accept valid `Vary` header string as `field` 28 | * Add `vary.append` for low-level string manipulation 29 | * Move to `jshttp` orgainzation 30 | 31 | 0.1.0 / 2014-06-05 32 | ================== 33 | 34 | * Support array of fields to set 35 | 36 | 0.0.0 / 2014-06-04 37 | ================== 38 | 39 | * Initial release 40 | -------------------------------------------------------------------------------- /Pseudo-classes/P5.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 15 |
16 |
17 |

Healthy Snacks

18 |
19 |
20 |

Lorem ipsum dolor sit amet, consectetur adipisicing elit. Facere perferendis perspiciatis temporibus debitis distinctio blanditiis ea. Animi, placeat sint magni.

21 | Show me some recipes 22 |
23 |
24 |
25 | 26 | 27 | -------------------------------------------------------------------------------- /geekbook/server/qcloud.js: -------------------------------------------------------------------------------- 1 | const fs = require('fs') 2 | const qcloud = require('wafer-node-sdk') 3 | 4 | // 获取基础配置 5 | const configs = require('./config') 6 | 7 | // 获取 sdk.config 8 | const sdkConfig = (() => { 9 | const sdkConfigPath = '/data/release/sdk.config.json' 10 | 11 | // 检查文件是否存在 12 | try { 13 | const stats = fs.statSync(sdkConfigPath) 14 | 15 | if (!stats.isFile()) { 16 | console.log('sdk.config.json 不存在,将使用 config.js 中的配置') 17 | return {} 18 | } 19 | } catch (e) { 20 | return {} 21 | } 22 | 23 | // 返回配置信息 24 | try { 25 | const content = fs.readFileSync(sdkConfigPath, 'utf8') 26 | return JSON.parse(content) 27 | } catch (e) { 28 | // 如果配置读取错误或者 JSON 解析错误,则输出空配置项 29 | console.log('sdk.config.json 解析错误,不是 JSON 字符串') 30 | return {} 31 | } 32 | })() 33 | 34 | // 初始化 SDK 35 | // 将基础配置和 sdk.config 合并传入 SDK 并导出初始化完成的 SDK 36 | module.exports = qcloud(Object.assign({}, sdkConfig, configs)) 37 | -------------------------------------------------------------------------------- /Pseudo-classes/P6.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 |

Bottom Angled Edge

12 |
13 | 14 |
15 |

Bottom Angled Edge

16 |

Reversed

17 |
18 | 19 |
20 |

Top Angled Edge

21 |
22 | 23 |
24 |

Top Angled Edge

25 |

Reversed

26 |
27 | 28 |
29 |

Top & Bottom Angled Edges

30 |
31 | 32 |
33 |

Top & Bottom Angled Edges

34 |

Reversed

35 |
36 | 37 | 38 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/.gitignore: -------------------------------------------------------------------------------- 1 | # OSX 2 | # 3 | .DS_Store 4 | 5 | # Xcode 6 | # 7 | build/ 8 | *.pbxuser 9 | !default.pbxuser 10 | *.mode1v3 11 | !default.mode1v3 12 | *.mode2v3 13 | !default.mode2v3 14 | *.perspectivev3 15 | !default.perspectivev3 16 | xcuserdata 17 | *.xccheckout 18 | *.moved-aside 19 | DerivedData 20 | *.hmap 21 | *.ipa 22 | *.xcuserstate 23 | project.xcworkspace 24 | 25 | # Android/IntelliJ 26 | # 27 | build/ 28 | .idea 29 | .gradle 30 | local.properties 31 | *.iml 32 | 33 | # node.js 34 | # 35 | node_modules/ 36 | npm-debug.log 37 | yarn-error.log 38 | 39 | # BUCK 40 | buck-out/ 41 | \.buckd/ 42 | *.keystore 43 | 44 | # fastlane 45 | # 46 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the 47 | # screenshots whenever they are needed. 48 | # For more information about the recommended setup visit: 49 | # https://docs.fastlane.tools/best-practices/source-control/ 50 | 51 | */fastlane/report.xml 52 | */fastlane/Preview.html 53 | */fastlane/screenshots 54 | -------------------------------------------------------------------------------- /geekbook/src/App.vue: -------------------------------------------------------------------------------- 1 | /*eslint no-console: "error"*/ 2 | // custom console 3 | 7 | 15 | 16 | 48 | -------------------------------------------------------------------------------- /geekbook/src/utils/index.js: -------------------------------------------------------------------------------- 1 | // 工具函数库 2 | import config from '.././config' 3 | 4 | // http get工具函数 获取数据 5 | export function get (url, data) { 6 | return request(url, 'GET', data) 7 | } 8 | export function post (url, data) { 9 | return request(url, 'POST', data) 10 | } 11 | 12 | function request (url, method, data, header = {}) { 13 | return new Promise((resolve, reject) => { 14 | wx.request({ 15 | data, 16 | method, 17 | header, 18 | url: config.host + url, 19 | success: function (res) { 20 | if (res.data.code === 0) { 21 | resolve(res.data.data) 22 | } else { 23 | showModal('失败', res.data.data.msg) 24 | reject(res.data) 25 | } 26 | } 27 | }) 28 | }) 29 | } 30 | 31 | export function showModal (title, content) { 32 | wx.showModal({ 33 | title, 34 | content, 35 | showCancel: false 36 | }) 37 | } 38 | export function showSuccess (text) { 39 | wx.showToast({ 40 | title: text, 41 | icon: 'success' 42 | }) 43 | } -------------------------------------------------------------------------------- /geekbook/server/controllers/booklist.js: -------------------------------------------------------------------------------- 1 | 2 | const { mysql } = require('../qcloud') 3 | 4 | module.exports = async (ctx) => { 5 | const {page, openid} = ctx.request.query 6 | const size = 10 7 | const mysqlSelect = mysql('books') 8 | .select('books.*', 'cSessionInfo.user_info') 9 | .join('cSessionInfo', 'books.openid', 'cSessionInfo.open_id') 10 | .orderBy('books.id', 'desc') 11 | let books 12 | if(openid){ 13 | // 根据opid过滤 14 | books = await mysqlSelect.where('books.openid', openid) 15 | }else{ 16 | // 全部图书 分页 17 | books = await mysqlSelect.limit(size).offset(Number(page) * size) 18 | } 19 | // .orderBy('id','desc') 20 | ctx.state.data = { 21 | list: books.map(v => { 22 | const info = JSON.parse(v.user_info) 23 | return Object.assign({}, v, { 24 | user_info: { 25 | nickName: info.nickName 26 | } 27 | }) 28 | }) 29 | } 30 | } 31 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android_views/read/search.js: -------------------------------------------------------------------------------- 1 | import React, { Component } from 'react'; 2 | import { 3 | StyleSheet, 4 | Text, 5 | View, 6 | TextInput, 7 | ScrollView, 8 | Image 9 | } from 'react-native'; 10 | 11 | import Util from './../util'; 12 | 13 | 14 | class Search extends Component{ 15 | render() { 16 | return ( 17 | 18 | 21 | 22 | ) 23 | } 24 | } 25 | 26 | 27 | const styles = StyleSheet.create({ 28 | container:{ 29 | paddingLeft:10, 30 | paddingRight:10, 31 | marginTop:20, 32 | borderColor:'#ccc', 33 | height:70 34 | }, 35 | search: { 36 | height: 50, 37 | borderWidth: 1, 38 | borderColor: '#ccc', 39 | borderRadius:3, 40 | marginTop:25, 41 | paddingLeft:10, 42 | fontSize:15 43 | } 44 | }); 45 | 46 | 47 | module.exports = Search; -------------------------------------------------------------------------------- /dry-switching-with-css/.idea/watcherTasks.xml: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 16 | 23 | 24 | -------------------------------------------------------------------------------- /geekbook/server/tools/snail.sql: -------------------------------------------------------------------------------- 1 | -- show create table books 2 | 3 | DROP TABLE IF EXISTS `books`; 4 | 5 | CREATE TABLE `books` ( 6 | `id` int(11) NOT NULL AUTO_INCREMENT, 7 | `isbn` varchar(20) NOT NULL, 8 | `openid` varchar(100) NOT NULL, 9 | `title` varchar(100) NOT NULL, 10 | `image` varchar(100) NOT NULL, 11 | `alt` varchar(100) NOT NULL, 12 | `publisher` varchar(100) NOT NULL, 13 | `summary` varchar(1000) NOT NULL, 14 | `price` varchar(100) DEFAULT NULL, 15 | `rate` float DEFAULT NULL, 16 | `tags` varchar(100) DEFAULT NULL, 17 | `author` varchar(100) DEFAULT NULL, 18 | `count` int(11) NOT NULL DEFAULT '0', 19 | PRIMARY KEY (`id`) 20 | ) ENGINE=InnoDB AUTO_INCREMENT=20 DEFAULT CHARSET=utf8; 21 | 22 | CREATE TABLE `comments` ( 23 | `id` int(11) NOT NULL AUTO_INCREMENT, 24 | `openid` varchar(100) NOT NULL, 25 | `bookid` varchar(100) NOT NULL, 26 | `comment` varchar(200) NOT NULL, 27 | `phone` varchar(20) DEFAULT NULL, 28 | `location` varchar(20) DEFAULT NULL, 29 | PRIMARY KEY (`id`) 30 | ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8; -------------------------------------------------------------------------------- /geekbook/server/tools/initdb.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 腾讯云微信小程序解决方案 3 | * Demo 数据库初始化脚本 4 | * @author Jason 5 | */ 6 | const fs = require('fs') 7 | const path = require('path') 8 | const { mysql: config } = require('../config') 9 | 10 | console.log('\n======================================') 11 | console.log('开始初始化数据库...') 12 | 13 | // 初始化 SQL 文件路径 14 | const INIT_DB_FILE = path.join(__dirname, './cAuth.sql') 15 | 16 | const DB = require('knex')({ 17 | client: 'mysql', 18 | connection: { 19 | host: config.host, 20 | port: config.port, 21 | user: config.user, 22 | password: config.pass, 23 | database: config.db, 24 | charset: config.char, 25 | multipleStatements: true 26 | } 27 | }) 28 | 29 | console.log(`准备读取 SQL 文件:${INIT_DB_FILE}`) 30 | 31 | // 读取 .sql 文件内容 32 | const content = fs.readFileSync(INIT_DB_FILE, 'utf8') 33 | 34 | console.log('开始执行 SQL 文件...') 35 | 36 | // 执行 .sql 文件内容 37 | DB.raw(content).then(res => { 38 | console.log('数据库初始化成功!') 39 | process.exit(0) 40 | }, err => { 41 | throw new Error(err) 42 | }) 43 | -------------------------------------------------------------------------------- /VeeValidate/css/common-stylefix.scss: -------------------------------------------------------------------------------- 1 | body { 2 | margin: 0; 3 | padding: 0; 4 | } 5 | 6 | [v-cloak] { 7 | visibility: hidden; 8 | } 9 | 10 | *, 11 | *::before, 12 | *::after { 13 | box-sizing: border-box; 14 | } 15 | 16 | button { 17 | border: none; 18 | background-color: transparent; 19 | padding-left: 0; 20 | padding-top: 0; 21 | padding-right: 0; 22 | padding-bottom: 0; 23 | } 24 | 25 | a { 26 | text-decoration: none !important; 27 | } 28 | 29 | 30 | ul { 31 | margin: 0; 32 | padding: 0; 33 | list-style: none; 34 | } 35 | 36 | 37 | button { 38 | outline: none; 39 | } 40 | 41 | 42 | input, 43 | textarea { 44 | outline: none; 45 | } 46 | .banner { 47 | .pic { 48 | ul { 49 | li { 50 | a { 51 | display: block; 52 | 53 | img { 54 | width: 100%; 55 | height: 168px; 56 | flex-shrink:0 57 | } 58 | } 59 | } 60 | } 61 | } 62 | } -------------------------------------------------------------------------------- /skeleton-demo/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | skeleton-demo 4 | Create By HBuilder 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | 19 | 0 20 | 21 | 10 22 | 23 | org.eclipse.ui.ide.orFilterMatcher 24 | 25 | 26 | org.eclipse.ui.ide.multiFilter 27 | 1.0-projectRelativePath-matches-false-false-bin 28 | 29 | 30 | org.eclipse.ui.ide.multiFilter 31 | 1.0-projectRelativePath-matches-false-false-setting 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express/lib/middleware/init.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * express 3 | * Copyright(c) 2009-2013 TJ Holowaychuk 4 | * Copyright(c) 2013 Roman Shtylman 5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson 6 | * MIT Licensed 7 | */ 8 | 9 | 'use strict'; 10 | 11 | /** 12 | * Module dependencies. 13 | * @private 14 | */ 15 | 16 | var setPrototypeOf = require('setprototypeof') 17 | 18 | /** 19 | * Initialization middleware, exposing the 20 | * request and response to each other, as well 21 | * as defaulting the X-Powered-By header field. 22 | * 23 | * @param {Function} app 24 | * @return {Function} 25 | * @api private 26 | */ 27 | 28 | exports.init = function(app){ 29 | return function expressInit(req, res, next){ 30 | if (app.enabled('x-powered-by')) res.setHeader('X-Powered-By', 'Express'); 31 | req.res = res; 32 | res.req = req; 33 | req.next = next; 34 | 35 | setPrototypeOf(req, app.request) 36 | setPrototypeOf(res, app.response) 37 | 38 | res.locals = res.locals || Object.create(null); 39 | 40 | next(); 41 | }; 42 | }; 43 | 44 | -------------------------------------------------------------------------------- /Pseudo-classes/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | Pseudo-classes 4 | Create By HBuilder 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | 19 | 1533865365682 20 | 21 | 10 22 | 23 | org.eclipse.ui.ide.orFilterMatcher 24 | 25 | 26 | org.eclipse.ui.ide.multiFilter 27 | 1.0-projectRelativePath-matches-false-false-bin 28 | 29 | 30 | org.eclipse.ui.ide.multiFilter 31 | 1.0-projectRelativePath-matches-false-false-setting 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/crc/lib/crc16_xmodem.js: -------------------------------------------------------------------------------- 1 | 'use strict'; 2 | 3 | var _buffer = require('buffer'); 4 | 5 | var _create_buffer = require('./create_buffer'); 6 | 7 | var _create_buffer2 = _interopRequireDefault(_create_buffer); 8 | 9 | var _define_crc = require('./define_crc'); 10 | 11 | var _define_crc2 = _interopRequireDefault(_define_crc); 12 | 13 | function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } 14 | 15 | module.exports = (0, _define_crc2.default)('xmodem', function (buf, previous) { 16 | if (!_buffer.Buffer.isBuffer(buf)) buf = (0, _create_buffer2.default)(buf); 17 | 18 | var crc = typeof previous !== 'undefined' ? ~~previous : 0x0; 19 | 20 | for (var index = 0; index < buf.length; index++) { 21 | var byte = buf[index]; 22 | var code = crc >>> 8 & 0xFF; 23 | 24 | code ^= byte & 0xFF; 25 | code ^= code >>> 4; 26 | crc = crc << 8 & 0xFFFF; 27 | crc ^= code; 28 | code = code << 5 & 0xFFFF; 29 | crc ^= code; 30 | code = code << 7 & 0xFFFF; 31 | crc ^= code; 32 | } 33 | 34 | return crc; 35 | }); -------------------------------------------------------------------------------- /geekbook/server/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "koa-weapp-demo", 3 | "version": "1.0.0", 4 | "description": "", 5 | "main": "app.js", 6 | "scripts": { 7 | "start": "pm2 start process.prod.json --no-daemon", 8 | "dev": "nodemon --config nodemon.json app.js", 9 | "initdb": "npm install && node tools/initdb.js" 10 | }, 11 | "author": "Jason", 12 | "license": "MIT", 13 | "dependencies": { 14 | "axios": "^0.15.3", 15 | "knex": "^0.13.0", 16 | "koa": "^2.0.0", 17 | "koa-bodyparser": "^3.2.0", 18 | "koa-log4": "^2.1.0", 19 | "koa-router": "^7.0.1", 20 | "lodash": "^4.17.4", 21 | "mkdir-p": "0.0.7", 22 | "mysql": "^2.14.1", 23 | "pify": "^2.3.0", 24 | "wafer-node-sdk": "^1.3.4" 25 | }, 26 | "devDependencies": { 27 | "babel-eslint": "^7.1.0", 28 | "debug": "^2.6.8", 29 | "eslint": "^3.9.1", 30 | "eslint-config-standard": "^6.2.1", 31 | "eslint-plugin-promise": "^3.3.1", 32 | "eslint-plugin-standard": "^2.0.1" 33 | } 34 | } 35 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/range-parser/HISTORY.md: -------------------------------------------------------------------------------- 1 | 1.2.0 / 2016-06-01 2 | ================== 3 | 4 | * Add `combine` option to combine overlapping ranges 5 | 6 | 1.1.0 / 2016-05-13 7 | ================== 8 | 9 | * Fix incorrectly returning -1 when there is at least one valid range 10 | * perf: remove internal function 11 | 12 | 1.0.3 / 2015-10-29 13 | ================== 14 | 15 | * perf: enable strict mode 16 | 17 | 1.0.2 / 2014-09-08 18 | ================== 19 | 20 | * Support Node.js 0.6 21 | 22 | 1.0.1 / 2014-09-07 23 | ================== 24 | 25 | * Move repository to jshttp 26 | 27 | 1.0.0 / 2013-12-11 28 | ================== 29 | 30 | * Add repository to package.json 31 | * Add MIT license 32 | 33 | 0.0.4 / 2012-06-17 34 | ================== 35 | 36 | * Change ret -1 for unsatisfiable and -2 when invalid 37 | 38 | 0.0.3 / 2012-06-17 39 | ================== 40 | 41 | * Fix last-byte-pos default to len - 1 42 | 43 | 0.0.2 / 2012-06-14 44 | ================== 45 | 46 | * Add `.type` 47 | 48 | 0.0.1 / 2012-06-11 49 | ================== 50 | 51 | * Initial release 52 | -------------------------------------------------------------------------------- /curtains-effect/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | curtains-effect 4 | Create By HBuilder 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | 19 | 1658456539809 20 | 21 | 10 22 | 23 | org.eclipse.ui.ide.orFilterMatcher 24 | 25 | 26 | org.eclipse.ui.ide.multiFilter 27 | 1.0-projectRelativePath-matches-false-false-bin 28 | 29 | 30 | org.eclipse.ui.ide.multiFilter 31 | 1.0-projectRelativePath-matches-false-false-setting 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /dry-switching-with-css/query-demo/.project: -------------------------------------------------------------------------------- 1 | 2 | 3 | infographic-demo 4 | Create By HBuilder 5 | 6 | 7 | 8 | 9 | com.aptana.ide.core.unifiedBuilder 10 | 11 | 12 | 13 | 14 | 15 | com.aptana.projects.webnature 16 | 17 | 18 | 19 | 0 20 | 21 | 10 22 | 23 | org.eclipse.ui.ide.orFilterMatcher 24 | 25 | 26 | org.eclipse.ui.ide.multiFilter 27 | 1.0-projectRelativePath-matches-false-false-bin 28 | 29 | 30 | org.eclipse.ui.ide.multiFilter 31 | 1.0-projectRelativePath-matches-false-false-setting 32 | 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /dry-switching-with-css/infographic-demo/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 |

gingerbread

11 |

step one

12 |

Cake muffin donut chocolate cake jelly sesame snaps wafer tart pie sweet roll muffin chupa chups.

13 |
14 |
15 |

brownie

16 |

step two

17 |

Cake cookie lemon drops muffin sugar plum. Liquorice pudding sugar plum topping macaroon pie chocolate.

18 |
19 |
20 |

ice cream

21 |

step three

22 |

Cake muffin donut chocolate cake jelly sesame snaps wafer tart pie sweet roll muffin chupa chups.

23 |
24 |
25 |

lava cake

26 |

step four

27 |

Cake cookie lemon drops muffin sugar plum. Liquorice pudding sugar plum topping macaroon pie chocolate.

28 |
29 | 30 | 31 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/iconv-lite/lib/index.d.ts: -------------------------------------------------------------------------------- 1 | /*--------------------------------------------------------------------------------------------- 2 | * Copyright (c) Microsoft Corporation. All rights reserved. 3 | * Licensed under the MIT License. 4 | * REQUIREMENT: This definition is dependent on the @types/node definition. 5 | * Install with `npm install @types/node --save-dev` 6 | *--------------------------------------------------------------------------------------------*/ 7 | 8 | declare module 'iconv-lite' { 9 | export function decode(buffer: NodeBuffer, encoding: string, options?: Options): string; 10 | 11 | export function encode(content: string, encoding: string, options?: Options): NodeBuffer; 12 | 13 | export function encodingExists(encoding: string): boolean; 14 | 15 | export function decodeStream(encoding: string, options?: Options): NodeJS.ReadWriteStream; 16 | 17 | export function encodeStream(encoding: string, options?: Options): NodeJS.ReadWriteStream; 18 | } 19 | 20 | export interface Options { 21 | stripBOM?: boolean; 22 | addBOM?: boolean; 23 | defaultEncoding?: string; 24 | } 25 | -------------------------------------------------------------------------------- /Toilet-React-native/service/public/javascripts/edit.js: -------------------------------------------------------------------------------- 1 | (function(global){ 2 | function getQueryString(name) { 3 | var reg = new RegExp("(^|&)" + name + "=([^&]*)(&|$)", "i"); 4 | var r = window.location.search.substr(1).match(reg); 5 | if (r != null) return unescape(r[2]); return null; 6 | } 7 | 8 | var type = getQueryString('type'); 9 | 10 | $('.addinfo_btn').on('click', function(){ 11 | if(!type){ 12 | return; 13 | } 14 | var title = $('#title').val(); 15 | var url = $('#url').val(); 16 | var img = $('#img').val(); 17 | var obj = { 18 | type: type, 19 | title: title, 20 | url: url, 21 | img: img 22 | }; 23 | 24 | $.ajax({ 25 | type: 'POST', 26 | url: '/data/write', 27 | data: obj, 28 | success: function(data){ 29 | if(data.status){ 30 | alert('添加数据成功'); 31 | window.location.reload(); 32 | }else{ 33 | alert('添加失败'); 34 | } 35 | }, 36 | error: function(){ 37 | alert('添加失败'); 38 | }, 39 | dataType: 'json' 40 | }); 41 | 42 | }); 43 | 44 | 45 | })(window); -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/content-disposition/HISTORY.md: -------------------------------------------------------------------------------- 1 | 0.5.2 / 2016-12-08 2 | ================== 3 | 4 | * Fix `parse` to accept any linear whitespace character 5 | 6 | 0.5.1 / 2016-01-17 7 | ================== 8 | 9 | * perf: enable strict mode 10 | 11 | 0.5.0 / 2014-10-11 12 | ================== 13 | 14 | * Add `parse` function 15 | 16 | 0.4.0 / 2014-09-21 17 | ================== 18 | 19 | * Expand non-Unicode `filename` to the full ISO-8859-1 charset 20 | 21 | 0.3.0 / 2014-09-20 22 | ================== 23 | 24 | * Add `fallback` option 25 | * Add `type` option 26 | 27 | 0.2.0 / 2014-09-19 28 | ================== 29 | 30 | * Reduce ambiguity of file names with hex escape in buggy browsers 31 | 32 | 0.1.2 / 2014-09-19 33 | ================== 34 | 35 | * Fix periodic invalid Unicode filename header 36 | 37 | 0.1.1 / 2014-09-19 38 | ================== 39 | 40 | * Fix invalid characters appearing in `filename*` parameter 41 | 42 | 0.1.0 / 2014-09-18 43 | ================== 44 | 45 | * Make the `filename` argument optional 46 | 47 | 0.0.0 / 2014-09-18 48 | ================== 49 | 50 | * Initial release 51 | -------------------------------------------------------------------------------- /Toilet-React-native/service/node_modules/express/lib/middleware/query.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * express 3 | * Copyright(c) 2009-2013 TJ Holowaychuk 4 | * Copyright(c) 2013 Roman Shtylman 5 | * Copyright(c) 2014-2015 Douglas Christopher Wilson 6 | * MIT Licensed 7 | */ 8 | 9 | 'use strict'; 10 | 11 | /** 12 | * Module dependencies. 13 | */ 14 | 15 | var merge = require('utils-merge') 16 | var parseUrl = require('parseurl'); 17 | var qs = require('qs'); 18 | 19 | /** 20 | * @param {Object} options 21 | * @return {Function} 22 | * @api public 23 | */ 24 | 25 | module.exports = function query(options) { 26 | var opts = merge({}, options) 27 | var queryparse = qs.parse; 28 | 29 | if (typeof options === 'function') { 30 | queryparse = options; 31 | opts = undefined; 32 | } 33 | 34 | if (opts !== undefined && opts.allowPrototypes === undefined) { 35 | // back-compat for qs module 36 | opts.allowPrototypes = true; 37 | } 38 | 39 | return function query(req, res, next){ 40 | if (!req.query) { 41 | var val = parseUrl(req).query; 42 | req.query = queryparse(val, opts); 43 | } 44 | 45 | next(); 46 | }; 47 | }; 48 | -------------------------------------------------------------------------------- /Toilet-React-native/toilet/android/app/src/main/AndroidManifest.xml: -------------------------------------------------------------------------------- 1 | 3 | 4 | 5 | 6 | 7 | 13 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | -------------------------------------------------------------------------------- /VueSliderShow/README.md: -------------------------------------------------------------------------------- 1 | # vueslidershow 2 | 3 | > a slider implement by vuejs 4 | >一个vue的响应式自适应轮播图组件 5 | 6 | [示例源码地址](https://github.com/HongqingCao/MyCode/tree/master/VueSliderShow) 7 | 8 | ###### ![实例效果](https://github.com/HongqingCao/MyCode/blob/master/VueSliderShow/VueSlider.gif) 9 | 10 | ## Install 11 | ``` bash 12 | npm i vueslideshow 13 | ``` 14 | 15 | 16 | ## 应用案例 17 | 18 | #### in vue2.x: 19 | 20 | ```html 21 | 26 | 27 |