From 67c21995dd6a51857c7a17789d8714b23a7f306c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=A5=8F?= <1978476055@qq.com> Date: Mon, 21 Oct 2024 09:05:15 +0800 Subject: [PATCH] 1 --- .env | 1 + .env.development | 1 + .env.production | 1 + .env.test | 1 + .eslintrc | 18 + .gitignore | 2 + .hbuilderx/launch.json | 16 + .npmrc | 2 + .vscode/css.code-snippets | 398 ++ .vscode/extensions.json | 8 + .vscode/js.code-snippets | 1669 +++++ .vscode/vue-html.code-snippets | 668 ++ README.md | 66 + auto-imports.d.ts | 286 + index.html | 20 + package.json | 71 + pnpm-lock.yaml | 8791 ++++++++++++++++++++++++++ src/App.vue | 17 + src/config/env.ts | 29 + src/config/index.ts | 2 + src/config/service.ts | 47 + src/enums/common/index.ts | 1 + src/enums/common/service.ts | 5 + src/enums/common/storage.ts | 8 + src/enums/index.ts | 1 + src/env.d.ts | 8 + src/main.ts | 14 + src/manifest.json | 72 + src/pages.json | 112 + src/pages/appointment-form/index.vue | 348 + src/pages/appointment-quan/index.vue | 173 + src/pages/appointment-time/index.vue | 167 + src/pages/index/about.vue | 19 + src/pages/index/index.vue | 215 + src/pages/user-info/index.vue | 176 + src/service/api/index.ts | 1 + src/service/api/json/index.ts | 16 + src/service/api/user/index.ts | 16 + src/service/index.ts | 1 + src/service/request/index.ts | 25 + src/service/request/interceptors.ts | 40 + src/service/request/request.ts | 98 + src/static/home/meituan.png | Bin 0 -> 25226 bytes src/static/home/quan.png | Bin 0 -> 1614314 bytes src/static/home/scuss.png | Bin 0 -> 11568 bytes src/static/home/shipinhao.png | Bin 0 -> 16267 bytes src/static/home/tip.png | Bin 0 -> 955 bytes src/static/home/user.png | Bin 0 -> 180244 bytes src/static/logo.png | Bin 0 -> 4023 bytes src/static/logo.svg | 33 + src/static/tabbar/example.png | Bin 0 -> 1371 bytes src/static/tabbar/exampleHL.png | Bin 0 -> 1398 bytes src/static/tabbar/home.png | Bin 0 -> 1346 bytes src/static/tabbar/homeHL.png | Bin 0 -> 1415 bytes src/static/tabbar/personal.png | Bin 0 -> 2457 bytes src/static/tabbar/personalHL.png | Bin 0 -> 2534 bytes src/store/index.ts | 9 + src/store/modules/count/index.ts | 10 + src/store/modules/index.ts | 1 + src/typings/env.d.ts | 17 + src/typings/error.ts | 11 + src/typings/request.d.ts | 66 + src/uni.scss | 76 + src/utils/common/error.ts | 22 + src/utils/common/index.ts | 4 + src/utils/common/modal.ts | 61 + src/utils/common/route.ts | 105 + src/utils/common/storage.ts | 7 + src/utils/index.ts | 1 + tsconfig.json | 29 + unocss.config.ts | 28 + vite.config.ts | 39 + 72 files changed, 14149 insertions(+) create mode 100644 .env create mode 100644 .env.development create mode 100644 .env.production create mode 100644 .env.test create mode 100644 .eslintrc create mode 100644 .gitignore create mode 100644 .hbuilderx/launch.json create mode 100644 .npmrc create mode 100644 .vscode/css.code-snippets create mode 100644 .vscode/extensions.json create mode 100644 .vscode/js.code-snippets create mode 100644 .vscode/vue-html.code-snippets create mode 100644 README.md create mode 100644 auto-imports.d.ts create mode 100644 index.html create mode 100644 package.json create mode 100644 pnpm-lock.yaml create mode 100644 src/App.vue create mode 100644 src/config/env.ts create mode 100644 src/config/index.ts create mode 100644 src/config/service.ts create mode 100644 src/enums/common/index.ts create mode 100644 src/enums/common/service.ts create mode 100644 src/enums/common/storage.ts create mode 100644 src/enums/index.ts create mode 100644 src/env.d.ts create mode 100644 src/main.ts create mode 100644 src/manifest.json create mode 100644 src/pages.json create mode 100644 src/pages/appointment-form/index.vue create mode 100644 src/pages/appointment-quan/index.vue create mode 100644 src/pages/appointment-time/index.vue create mode 100644 src/pages/index/about.vue create mode 100644 src/pages/index/index.vue create mode 100644 src/pages/user-info/index.vue create mode 100644 src/service/api/index.ts create mode 100644 src/service/api/json/index.ts create mode 100644 src/service/api/user/index.ts create mode 100644 src/service/index.ts create mode 100644 src/service/request/index.ts create mode 100644 src/service/request/interceptors.ts create mode 100644 src/service/request/request.ts create mode 100644 src/static/home/meituan.png create mode 100644 src/static/home/quan.png create mode 100644 src/static/home/scuss.png create mode 100644 src/static/home/shipinhao.png create mode 100644 src/static/home/tip.png create mode 100644 src/static/home/user.png create mode 100644 src/static/logo.png create mode 100644 src/static/logo.svg create mode 100644 src/static/tabbar/example.png create mode 100644 src/static/tabbar/exampleHL.png create mode 100644 src/static/tabbar/home.png create mode 100644 src/static/tabbar/homeHL.png create mode 100644 src/static/tabbar/personal.png create mode 100644 src/static/tabbar/personalHL.png create mode 100644 src/store/index.ts create mode 100644 src/store/modules/count/index.ts create mode 100644 src/store/modules/index.ts create mode 100644 src/typings/env.d.ts create mode 100644 src/typings/error.ts create mode 100644 src/typings/request.d.ts create mode 100644 src/uni.scss create mode 100644 src/utils/common/error.ts create mode 100644 src/utils/common/index.ts create mode 100644 src/utils/common/modal.ts create mode 100644 src/utils/common/route.ts create mode 100644 src/utils/common/storage.ts create mode 100644 src/utils/index.ts create mode 100644 tsconfig.json create mode 100644 unocss.config.ts create mode 100644 vite.config.ts diff --git a/.env b/.env new file mode 100644 index 0000000..2424a90 --- /dev/null +++ b/.env @@ -0,0 +1 @@ +VITE_BASE_XXX=XXX diff --git a/.env.development b/.env.development new file mode 100644 index 0000000..766d159 --- /dev/null +++ b/.env.development @@ -0,0 +1 @@ +VITE_SERVICE_ENV=dev diff --git a/.env.production b/.env.production new file mode 100644 index 0000000..f77837d --- /dev/null +++ b/.env.production @@ -0,0 +1 @@ +VITE_SERVICE_ENV=prod diff --git a/.env.test b/.env.test new file mode 100644 index 0000000..6856e7c --- /dev/null +++ b/.env.test @@ -0,0 +1 @@ +VITE_SERVICE_ENV=test diff --git a/.eslintrc b/.eslintrc new file mode 100644 index 0000000..47c261e --- /dev/null +++ b/.eslintrc @@ -0,0 +1,18 @@ +{ + "extends": "@antfu", + "rules": { + // if else try catch 风格 + // ``` + // try { try { + // loading() loading() + // } ==> } catch (e) { + // catch (e) { hideLoading() + // hideLoading() } + // } + // ``` + "@typescript-eslint/brace-style": ["error", "1tbs"], + + // if else 必须添加{} if()do() => if(){ do() } + "curly":["error", "multi-line"] + } +} diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f06235c --- /dev/null +++ b/.gitignore @@ -0,0 +1,2 @@ +node_modules +dist diff --git a/.hbuilderx/launch.json b/.hbuilderx/launch.json new file mode 100644 index 0000000..81f13f4 --- /dev/null +++ b/.hbuilderx/launch.json @@ -0,0 +1,16 @@ +{ // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/ + // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数 + "version": "0.0", + "configurations": [{ + "default" : + { + "launchtype" : "local" + }, + "mp-weixin" : + { + "launchtype" : "local" + }, + "type" : "uniCloud" + } + ] +} diff --git a/.npmrc b/.npmrc new file mode 100644 index 0000000..cf04042 --- /dev/null +++ b/.npmrc @@ -0,0 +1,2 @@ +shamefully-hoist=true +strict-peer-dependencies=false diff --git a/.vscode/css.code-snippets b/.vscode/css.code-snippets new file mode 100644 index 0000000..378fe6f --- /dev/null +++ b/.vscode/css.code-snippets @@ -0,0 +1,398 @@ +{ + "#ifdef": { + "body": [ + "/* #ifdef ${1|APP-PLUS,MP,MP-ALIPAY,MP-BAIDU,MP-WEIXIN,MP-QQ,H5|} */", + "$0", + "/* #endif */" + ], + "prefix": "ifdef", + "project": "uni-app", + "scope": "css" + }, + "#ifndef": { + "body": [ + "/* #ifndef ${1|APP-PLUS,MP,MP-ALIPAY,MP-BAIDU,MP-WEIXIN,MP-QQ,H5|} */", + "$0", + "/* #endif */" + ], + "prefix": "ifndef", + "project": "uni-app", + "scope": "css" + }, + "-moz-": { + "body": [ + "-moz-" + ], + "prefix": "moz", + "scope": "css", + "triggerAssist": true + }, + "-ms-": { + "body": [ + "-ms-" + ], + "prefix": "ms", + "scope": "css", + "triggerAssist": true + }, + "-webkit-": { + "body": [ + "-webkit-" + ], + "prefix": "webkit", + "scope": "css", + "triggerAssist": true + }, + "@-moz-keyframes": { + "body": [ + "@-moz-keyframes ${1:name}{", + "\tfrom{$2}", + "\tto{$3}", + "}" + ], + "prefix": "@keyframes", + "scope": "CSS_OUTRULE" + }, + "@-ms-keyframes": { + "body": [ + "@-ms-keyframes ${1:name}{", + "\tfrom{$2}", + "\tto{$3}", + "}" + ], + "prefix": "@keyframes", + "scope": "CSS_OUTRULE" + }, + "@-webkit-keyframes": { + "body": [ + "@-webkit-keyframes ${1:name}{", + "\tfrom{$2}", + "\tto{$3}", + "}" + ], + "prefix": "@keyframes", + "scope": "CSS_OUTRULE" + }, + "@charset": { + "body": [ + "@charset \"${1:utf-8}\";" + ], + "prefix": "@charset", + "scope": "CSS_OUTRULE" + }, + "@document": { + "body": [ + "@document ${1:url}(\"$2\") {", + "\t$3", + "}" + ], + "prefix": "@document", + "scope": "CSS_OUTRULE" + }, + "@font-face": { + "body": [ + "@font-face {", + "\tfont-family:$1;", + "\tsrc: url($2);", + "}" + ], + "prefix": "@fontface", + "scope": "CSS_OUTRULE" + }, + "@import": { + "body": [ + "@import url(\"$1\");" + ], + "prefix": "@import", + "scope": "CSS_OUTRULE", + "triggerAssist": true + }, + "@keyframes": { + "body": [ + "@keyframes ${1:name}{", + "\tfrom{$2}", + "\tto{$3}", + "}" + ], + "prefix": "@keyframes", + "scope": "CSS_OUTRULE" + }, + "@media": { + "body": [ + "@media $1 {", + "\t$2", + "}" + ], + "prefix": "@media", + "scope": "CSS_OUTRULE" + }, + "@namespace": { + "body": [ + "@namespace ${1:prefix} \"$2\";" + ], + "prefix": "@namespace", + "scope": "CSS_OUTRULE" + }, + "@page": { + "body": [ + "@page:${1:first}{", + "\t", + "}" + ], + "prefix": "@page", + "scope": "CSS_OUTRULE" + }, + "@supports": { + "body": [ + "@supports(${1:prop}:${2:value}) {", + "\t$3", + "}" + ], + "prefix": "@supports", + "scope": "CSS_OUTRULE" + }, + "background-color": { + "body": [ + "background-color: $1" + ], + "prefix": "bc", + "scope": "css", + "triggerAssist": true + }, + "background-color: #": { + "body": [ + "background-color: #$1" + ], + "prefix": "bch", + "scope": "css", + "triggerAssist": true + }, + "background-color: rgb": { + "body": [ + "background-color: rgb(${1:255},${2:255},${3:255})" + ], + "prefix": "bcr", + "scope": "css" + }, + "background-image": { + "body": [ + "background-image: $1" + ], + "prefix": "bi", + "scope": "css", + "triggerAssist": true + }, + "background-image: url": { + "body": [ + "background-image: url($1)" + ], + "prefix": "biu", + "scope": "css", + "triggerAssist": true + }, + "background-position": { + "body": [ + "background-position: $1" + ], + "prefix": "bp", + "scope": "css", + "triggerAssist": true + }, + "background: image repeat attachment position": { + "body": [ + "background: url($1) ${2:repeat} ${3:fixed} ${4:center};$0" + ], + "prefix": "bg", + "scope": "css", + "triggerAssist": true + }, + "border-color": { + "body": [ + "border-color: $1" + ], + "prefix": "boc", + "scope": "css", + "triggerAssist": true + }, + "border-style": { + "body": [ + "border-style: $1" + ], + "prefix": "bs", + "scope": "css", + "triggerAssist": true + }, + "border-width": { + "body": [ + "border-width: $1" + ], + "prefix": "bw", + "scope": "css", + "triggerAssist": true + }, + "display: block": { + "body": [ + "display: block;" + ], + "prefix": "db", + "scope": "css" + }, + "display: flex": { + "body": [ + "display: flex;" + ], + "prefix": "df", + "scope": "css" + }, + "display: none": { + "body": [ + "display: none;" + ], + "prefix": "dn", + "scope": "css" + }, + "flex-direction: row": { + "body": [ + "flex-direction: row;" + ], + "prefix": "fdr", + "scope": "css" + }, + "font-family: family": { + "body": [ + "font-family: $1" + ], + "prefix": "ff", + "scope": "css", + "triggerAssist": true + }, + "font-size: size": { + "body": [ + "font-size: $1" + ], + "prefix": "fsize", + "scope": "css", + "triggerAssist": true + }, + "height --status-bar-height": { + "body": [ + "height: var(--status-bar-height);" + ], + "prefix": "heightstatusbar", + "project": "uni-app", + "scope": "css" + }, + "height --window-bottom": { + "body": [ + "height: var(--window-bottom);" + ], + "prefix": "heightwindowbottom", + "project": "uni-app", + "scope": "css" + }, + "height --window-top": { + "body": [ + "height: var(--window-top);" + ], + "prefix": "heightwindowtop", + "project": "uni-app", + "scope": "css" + }, + "height px": { + "body": [ + "height: ${1}px;$0" + ], + "prefix": "hpx", + "scope": "css" + }, + "justify-content: center": { + "body": [ + "justify-content: center;" + ], + "prefix": "jcc", + "scope": "css" + }, + "list-style-image: url": { + "body": [ + "list-style-image: url($1);" + ], + "prefix": "lsi", + "scope": "css", + "triggerAssist": true + }, + "scrollbar": { + "body": [ + "scrollbar-base-color: ${1:#CCCCCC};", + "scrollbar-arrow-color: ${2:#000000};", + "scrollbar-track-color: ${3:#999999};", + "scrollbar-3dlight-color: ${4:#EEEEEE};", + "scrollbar-highlight-color: ${5:#FFFFFF};", + "scrollbar-face-color: ${6:#CCCCCC};", + "scrollbar-shadow-color: ${7:#999999};", + "scrollbar-darkshadow-color: ${8:#666666};" + ], + "prefix": "scrollbarr", + "scope": "css" + }, + "text-align: center": { + "body": [ + "text-align: center;" + ], + "prefix": "tac", + "scope": "css" + }, + "text-align: left": { + "body": [ + "text-align: left;" + ], + "prefix": "tal", + "scope": "css" + }, + "text-align: right": { + "body": [ + "text-align: right;" + ], + "prefix": "tar", + "scope": "css" + }, + "text-transform": { + "body": [ + "text-transform: $1" + ], + "prefix": "tt", + "scope": "css", + "triggerAssist": true + }, + "userselect:none": { + "body": [ + "-webkit-user-select: none;", + "-moz-user-select: none;", + "-ms-user-select: none;", + "user-select: none;" + ], + "prefix": "usn", + "scope": "css" + }, + "width length": { + "body": [ + "width: ${1}px;$0" + ], + "prefix": "widthlength", + "scope": "css" + }, + "width upx": { + "body": [ + "width: ${1}upx;$0" + ], + "prefix": "wupx", + "project": "uni-app", + "scope": "css" + }, + "width_length": { + "body": [ + "width: ${1}px;$0" + ], + "prefix": "wlength", + "scope": "css" + } +} diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..389fd50 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,8 @@ +{ + "recommendations": [ + "dbaeumer.vscode-eslint", + "antfu.unocss", + "vue.volar", + "Vue.vscode-typescript-vue-plugin" + ] +} diff --git a/.vscode/js.code-snippets b/.vscode/js.code-snippets new file mode 100644 index 0000000..b82aa8c --- /dev/null +++ b/.vscode/js.code-snippets @@ -0,0 +1,1669 @@ +{ + "#ifdef": { + "body": [ + "// #ifdef ${1|APP-PLUS,APP-PLUS-NVUE,MP,MP-ALIPAY,MP-BAIDU,MP-WEIXIN,MP-QQ,H5|}", + "$0", + "// #endif" + ], + "prefix": "ifdef", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "#ifndef": { + "body": [ + "// #ifndef ${1|APP-PLUS,APP-PLUS-NVUE,MP,MP-ALIPAY,MP-BAIDU,MP-WEIXIN,MP-QQ,H5|}", + "$0", + "// #endif" + ], + "prefix": "ifndef", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "$ (document.getElementById)": { + "body": ["document.getElementById(\"$1\")"], + "prefix": "$$$", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "$(\"\")": { + "body": ["$(\"$1\")"], + "prefix": "dl", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "$(\"#\")": { + "body": ["$(\"#$1\")"], + "prefix": "dlid", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "$(\".\")": { + "body": ["$(\".$1\")"], + "prefix": "dlclass", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "@alias": { + "body": ["@alias $0"], + "prefix": "@alias", + "scope": "comment.block.js" + }, + "@description": { + "body": ["@description $0"], + "prefix": "@description", + "scope": "comment.block.js" + }, + "@event": { + "body": ["@event {Function(${1})} ${2:name} $0"], + "prefix": "@event", + "scope": "comment.block.js" + }, + "@example": { + "body": ["@example $0"], + "prefix": "@example", + "scope": "comment.block.js" + }, + "@extends": { + "body": ["@extends {${1:parent_type}}"], + "prefix": "@extends", + "scope": "comment.block.js" + }, + "@param": { + "body": ["@param {${1:type}} ${2:$FN_PARAMS} $0"], + "prefix": "@param", + "scope": "comment.block.js" + }, + "@param with values": { + "body": ["@param {${1:type}} ${2:$FN_PARAMS} = [${3:value}] $0"], + "prefix": "@paramvalues", + "scope": "comment.block.js" + }, + "@property": { + "body": ["@property {${1:type}} ${2:prop_name} $0"], + "prefix": "@property", + "scope": "comment.block.js" + }, + "@property with values": { + "body": ["@property {${1:type}} ${2:prop_name} = [${3:value}] $0"], + "prefix": "@propertyvalues", + "scope": "comment.block.js" + }, + "@return": { + "body": ["@return {${1:type}}"], + "prefix": "@return", + "scope": "comment.block.js" + }, + "@tutorial": { + "body": ["@tutorial ${1:url}"], + "prefix": "@tutorial", + "scope": "comment.block.js" + }, + "@type": { + "body": ["@type {${1:type}}"], + "prefix": "@type", + "scope": "comment.doc.js" + }, + "Arrow function": { + "body": ["($1) => {", "\t$0", "}"], + "prefix": "arrow", + "scope": "typescript,javascript" + }, + "Class": { + "body": [ + "class ${1:name} {", + "\tconstructor(${2:arg}) {", + "\t\t$0", + "\t}", + "\t", + "}" + ], + "prefix": "class", + "scope": "typescript,javascript" + }, + "Class Extends": { + "body": [ + "class ${1:name} extends ${2:AnotherClass} {", + "\tconstructor(${3:arg}) {", + "\t\t$0", + "\t}", + "\t", + "}" + ], + "prefix": "classextends", + "scope": "typescript,javascript" + }, + "Decrementer": { + "body": ["return ${1:this.num} -= ${2:1}"], + "description": "decrement", + "prefix": "vdec", + "scope": "typescript,javascript" + }, + "Export": { + "body": ["export ${1:default} ${2:bar}"], + "prefix": "export", + "scope": "typescript,javascript" + }, + "Export Class": { + "body": ["export class ${1:name} {", "\t$0", "}"], + "prefix": "exportclass", + "scope": "typescript,javascript" + }, + "Getter": { + "body": ["get ${1:name}() {", "\t$0", "}"], + "prefix": "getter", + "scope": "JS_INCLASSBODY" + }, + "Import": { + "body": ["import ${1:foo} from \"${2:bar}\""], + "prefix": "imfrom", + "scope": "typescript,javascript" + }, + "Incrementer": { + "body": ["return ${1:this.num} += ${2:1}"], + "description": "increment", + "prefix": "vinc", + "scope": "typescript,javascript" + }, + "Key:Value": { + "body": ["${1:key} : ${2:value},"], + "prefix": "kv", + "scope": "object.property.js" + }, + "Object Method": { + "body": ["${1:method_name}: function(${2:attribute}){", "\t$0", "}${3:,}"], + "prefix": ":f", + "scope": "typescript,javascript" + }, + "Object Method String": { + "body": [ + "'${1:${2:#thing}:${3:click}}': function(element){", + "\t$0", + "}${4:,}" + ], + "prefix": ":f", + "scope": "typescript,javascript" + }, + "Object Value JS": { + "body": ["${1:value_name}:${0:value},"], + "prefix": ":,", + "scope": "typescript,javascript" + }, + "Object key - key: \"value\"": { + "body": ["${1:key}: ${2:\"${3:value}\"}${4:, }"], + "prefix": ":", + "scope": "typescript,javascript" + }, + "Prototype": { + "body": [ + "${1:class_name}.prototype.${2:method_name} = function(${3:first_argument}) {", + "\t${0|,, body...|}", + "};" + ], + "prefix": "proto", + "scope": "typescript,javascript" + }, + "Setter": { + "body": ["set ${1:property}(${2:value}) {", "\t$0", "}"], + "prefix": "setter", + "scope": "class.body.js" + }, + "Unit Test": { + "body": [ + "import Vue from 'vue'", + "import ${1|HelloWorld|} from '.,components,${1:HelloWorld}'", + "", + "describe('${1:HelloWorld}.vue', () => {", + "\tit('${2:should render correct contents}', () => {", + "\t\tconst Constructor = Vue.extend(${1:HelloWorld})", + "\t\tconst vm = new Constructor().$mount()", + "\t\texpect(vm.$el.querySelector('.hello h1').textContent)", + "\t\t\t.to.equal(${3:'Welcome to Your Vue.js App'})", + "\t})", + "})" + ], + "description": "unit test component", + "prefix": "vtest", + "scope": "typescript,javascript" + }, + "Vue Commit Vuex Store in Methods": { + "body": [ + "${1:mutationName}() {", + "\tthis.\\$store.commit('${1:mutationName}', ${2:payload})", + "}" + ], + "description": "commit to vuex store in methods for mutation", + "prefix": "vcommit", + "scope": "vue.property.js" + }, + "Vue Components": { + "body": ["components: {", "\t$1", "},"], + "description": "注册vue组件", + "prefix": "vcomponents", + "scope": "vue.property.js" + }, + "Vue Computed": { + "body": [ + "computed: {", + "\t${1:name}() {", + "\t\treturn this.${2:data} ${0}", + "\t}", + "}," + ], + "description": "computed value", + "prefix": "vcomputed", + "scope": "vue.property.js" + }, + "Vue Custom Directive": { + "body": [ + "Vue.directive('${1:directiveName}', {", + "\tbind(el, binding, vnode) {", + "\t\tel.style.${2:arg} = binding.value.${2:arg};", + "\t}", + "});" + ], + "description": "vue custom directive", + "prefix": "vc-direct", + "scope": "typescript,javascript" + }, + "Vue Data": { + "body": ["data() {", "\treturn {", "\t\t${1:key}: ${2:value}", "\t}", "},"], + "description": "Vue Component Data", + "prefix": "vdata", + "scope": "vue.property.js" + }, + "Vue Dispatch Vuex Store in Methods": { + "body": [ + "${1:actionName}() {", + "\tthis.\\$store.dispatch('${1:actionName}', ${2:payload})", + "}" + ], + "description": "dispatch to vuex store in methods for action", + "prefix": "vdispatch", + "scope": "vue.property.js" + }, + "Vue Filter": { + "body": [ + "filters: {", + "\t${1:fnName}: function(${2:value}) {", + "\t\treturn ${2:value}${0};", + "\t}", + "}" + ], + "description": "vue filter", + "prefix": "vfilter", + "scope": "vue.property.js" + }, + "Vue Import Export": { + "body": [ + "import ${1|Name|} from '.,components,${1:Name}.vue'", + "", + "export default {", + "\tcomponents: {", + "\t\t${1:Name}", + "\t},", + "}" + ], + "description": "import a component and include it in export default", + "prefix": "vimport-export", + "scope": "typescript,javascript" + }, + "Vue Import File": { + "body": ["import ${1|New|} from ',components,${1:New}.vue';"], + "description": "Import one component into another", + "prefix": "vimport", + "scope": "typescript,javascript" + }, + "Vue Import GSAP": { + "body": ["import { TimelineMax, ${1:Ease} } from 'gsap'"], + "description": "component methods options that dispatch an action from vuex store.", + "prefix": "vimport-gsap", + "scope": "typescript,javascript" + }, + "Vue Import Library": { + "body": ["import { ${1:libName} } from '${1:libName}'"], + "description": "import a library", + "prefix": "vimport-lib", + "scope": "typescript,javascript" + }, + "Vue Import into the Component": { + "body": ["components: {", "\t${1:New},", "}"], + "description": "Import one component into another, within export statement", + "prefix": "vcomponents", + "scope": "typescript,javascript" + }, + "Vue Methods": { + "body": ["methods: {", "\t${1:name}() {", "\t\t${0}", "\t}", "},"], + "description": "vue method", + "prefix": "vmethod", + "scope": "vue.property.js" + }, + "Vue Mixin": { + "body": [ + "const ${1:mixinName} = {", + "\tmounted() {", + "\t\tconsole.log('hello from mixin!')", + "\t},", + "}" + ], + "description": "vue mixin", + "prefix": "vmixin", + "scope": "typescript,javascript" + }, + "Vue Props with Default": { + "body": [ + "props: {", + "\t${1:propName}: {", + "\t\ttype: ${2:Number},", + "\t\tdefault: ${0}", + "\t},", + "}," + ], + "description": "Vue Props with Default", + "prefix": "vprops", + "scope": "vue.property.js" + }, + "Vue Transition Methods with JavaScript Hooks": { + "body": [ + "beforeEnter(el) {", + "\tconsole.log('beforeEnter');", + "},", + "enter(el, done) {", + "\tconsole.log('enter');", + "\tdone();", + "},", + "beforeLeave(el) {", + "\tconsole.log('beforeLeave');", + "},", + "leave(el, done) {", + "\tconsole.log('leave');", + "\tdone();", + "}," + ], + "description": "transition component js hooks", + "prefix": "vanimhook-js", + "scope": "typescript,javascript" + }, + "Vue Use Mixin": { + "body": ["mixins: [${1:mixinName}]"], + "description": "vue use mixin", + "prefix": "vmixin-use", + "scope": "typescript,javascript" + }, + "Vue Watchers": { + "body": [ + "watch: {", + "\t${1:data}(${2:newValue}, ${3:oldValue}) {", + "\t\t${0}", + "\t}", + "}," + ], + "description": "vue watcher", + "prefix": "vwatcher", + "scope": "vue.property.js" + }, + "clog": { + "body": ["console.log($1);"], + "description": "打印变量", + "prefix": "clog", + "scope": "typescript,javascript" + }, + "clogios": { + "body": ["console.log(JSON.stringify(${1:e}));", "console.log('${2:e}');"], + "prefix": "cloios", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "clogjson": { + "body": ["console.log(\"$1: \" + JSON.stringify($1));"], + "description": "打印JSON字符串", + "prefix": "clogjson", + "scope": "typescript,javascript" + }, + "clogvar": { + "body": ["console.log(\"$1: \" + $1);"], + "description": "打印变量", + "prefix": "clogvar", + "scope": "typescript,javascript" + }, + "console.dir": { + "body": ["console.dir($1)"], + "prefix": "cdir", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "console.log();": { + "body": ["console.log($1);"], + "prefix": "clog", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "constructor": { + "body": ["constructor(${1:arg}) {", " $0", "}"], + "prefix": "cons", + "scope": "class.body.js" + }, + "document.getElementById": { + "body": ["document.getElementById(\"$1\")"], + "prefix": "dg", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "document.querySelectorAll": { + "body": ["document.querySelectorAll(\"$1\")"], + "prefix": "dqs", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "document.write": { + "body": ["document.write(\"$1\")"], + "prefix": "dw", + "scope": "typescript,javascript" + }, + "documentaddEventListener": { + "body": [ + "document.addEventListener('${1:scroll}',function ($2) {", + " $0", + "})" + ], + "prefix": "dad", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "export default": { + "body": ["export default {", "\t$0", "}"], + "prefix": "edefault", + "scope": "typescript,javascript" + }, + "for (...) {...}": { + "body": ["for ($1) {", "\t$0", "}"], + "prefix": "forr", + "scope": "typescript,javascript" + }, + "for let": { + "body": [ + "for (let i = 0; i < ${1:Things}.length; i++) {", + "\t${1:Things}[i]", + "}" + ], + "prefix": "forl", + "scope": "typescript,javascript" + }, + "for let in": { + "body": ["for (let ${1:var1} in ${2:var2}) {", "\t$0", "}"], + "prefix": "forli", + "scope": "typescript,javascript" + }, + "for...of": { + "body": ["for (let ${1:s} of ${2:sequence}) {", "\t$0", "}"], + "prefix": "forof", + "scope": "typescript,javascript" + }, + "fori": { + "body": [ + "for (var i = 0; i < ${1:Things}.length; i++) {", + "\t${1:Things}[i]", + "}" + ], + "prefix": "fori", + "scope": "typescript,javascript" + }, + "function": { + "body": ["function ${1:function_name} ($2) {", "\t$0", "}"], + "prefix": "funn", + "scope": "typescript,javascript" + }, + "function*": { + "body": ["function* ${1:name}($2) {", "\tyield $0;", "}"], + "prefix": "fung", + "scope": "typescript,javascript" + }, + "function_anonymous": { + "body": ["function ($1) {", "\t$0", "}"], + "prefix": "funan", + "scope": "typescript,javascript" + }, + "function_closures": { + "body": ["(function ($1) {", "\t$0", "})($2)"], + "prefix": "funcl", + "scope": "typescript,javascript" + }, + "getElementByIdaddEventListener": { + "body": [ + "document.getElementById('$1').addEventListener('${2:tap}',function ($3) {", + " $0", + "})" + ], + "prefix": "dga", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "if": { + "body": ["if ($1) {", "\t$0", "}"], + "prefix": "iff", + "scope": "typescript,javascript" + }, + "if ... else": { + "body": ["if ($1) {", "\t$0", "} else{", "\t", "}"], + "prefix": "ife", + "scope": "typescript,javascript" + }, + "ifAndroid": { + "body": [ + "if (uni.getSystemInfoSync().platform == \"android\") {", + "\t$1", + "}" + ], + "prefix": "ifandroid", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "if_compare": { + "body": ["if ($1 == ${2:true}) {", "\t$0", "} else{", "\t", "}"], + "prefix": "ifc", + "scope": "typescript,javascript" + }, + "ifiOS": { + "body": ["if (uni.getSystemInfoSync().platform == \"ios\") {", "\t$1", "}"], + "prefix": "ifios", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "module.exports": { + "body": ["module.exports = {", "\t$0", "}"], + "prefix": "mexports", + "scope": "typescript,javascript" + }, + "mui": { + "body": ["mui."], + "prefix": "mui", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui('').pullRefresh": { + "body": ["mui('#${1:refreshContainer}').pullRefresh().$2"], + "prefix": "mmpullrefresh", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui('').scroll": { + "body": ["mui('.${1:mui-scroll-wrapper}').scroll({$2})$0"], + "prefix": "mmscroll", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui('').slider": { + "body": ["mui('.${1:mui-slider}').slider({$2})$0"], + "prefix": "mmslider", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui()": { + "body": ["mui('$1')"], + "prefix": "mmui", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui().each()": { + "body": [ + "mui('$1').each(function (${3:index},${4:element}) {", + "\t$0", + "})" + ], + "prefix": "mmeach", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.ajax()": { + "body": [ + "mui.ajax('$1',{", + "\tdata:{", + "\t\t$2", + "\t},", + "\tdataType:'${3:json}',//服务器返回json格式数据", + "\ttype:'${4:post}',//HTTP请求类型", + "\ttimeout:${5:10000},//超时时间设置为10秒;", + "\tsuccess:function(${6:data}){", + "\t\t$7", + "\t},", + "\terror:function(${8:xhr,type,errorThrown}){", + "\t\t$9", + "\t}", + "});$0" + ], + "prefix": "majax", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.alert()": { + "body": [ + "mui.alert('${1:message}','${2:title}','${3:btnValue}',function (${4:e}) {", + " ${4:e}.index$0", + "}${5:,'div'})" + ], + "prefix": "mdalert", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.back()(返回上级页面)": { + "body": ["mui.back()$0"], + "prefix": "mback", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.backDouble(双击退出应用)": { + "body": [ + "//首页返回键处理", + "//处理逻辑:1秒内,连续两次按返回键,则退出应用;", + "var first = null;", + "mui.back = function() {", + "\t//首次按键,提示‘再按一次退出应用’", + "\tif (!first) {", + "\t\tfirst = new Date().getTime();", + "\t\tmui.toast('再按一次退出应用');", + "\t\tsetTimeout(function() {", + "\t\t\tfirst = null;", + "\t\t}, 1000);", + "\t} else {", + "\t\tif (new Date().getTime() - first < 1000) {", + "\t\t\tplus.runtime.quit();", + "\t\t}", + "\t}", + "};" + ], + "prefix": "mbackDouble", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.backFunction(重写返回逻辑)": { + "body": ["mui.back=function () {", " $0\t", "}"], + "prefix": "mbackfunction", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.backTask(双击进入后台)": { + "body": [ + "//首页返回键处理", + "//处理逻辑:1秒内,连续两次按返回键,则进入后台;", + "var first = null;", + "mui.back = function() {", + "\t//首次按键,提示‘再按一次退出应用’", + "\tif (!first) {", + "\t\tfirst = new Date().getTime();", + "\t\tmui.toast('再按一次退出应用');", + "\t\tsetTimeout(function() {", + "\t\t\tfirst = null;", + "\t\t}, 1000);", + "\t} else {", + "\t\tif (new Date().getTime() - first < 1000) {", + "\t\t\tvar main = plus.android.runtimeMainActivity();", + " main.moveTaskToBack(false);", + "\t\t}", + "\t}", + "};" + ], + "prefix": "mbackMoveTaskToBack", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.closePopup()": { + "body": ["mui.closePopup()$0"], + "prefix": "mdclosePopup", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.closePopups()": { + "body": ["mui.closePopups()$0"], + "prefix": "mdclosePopups", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.confirm()": { + "body": [ + "mui.confirm('${1:message}','${2:title}',['${3:取消}','${4:确认}'],function (${5:e}) {", + "\t${5:e}.index$0", + "}${6:,'div'})" + ], + "prefix": "mdconfirm", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.currentWebview": { + "body": ["mui.currentWebview."], + "prefix": "mcurrent", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.each()": { + "body": [ + "mui.each(${1:obj},function (${2:index},${3:element}) {", + "\t$0", + "})" + ], + "prefix": "meach", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.extend()": { + "body": ["mui.extend(${1|'target'|},${2:'source'},${3:'deep',true,false})"], + "prefix": "mextend", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.fire()": { + "body": ["mui.fire(${1:targetWebviewObj},'${2:event}',{${3:data}})"], + "prefix": "mfire", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.get()": { + "body": [ + "mui.get('$1',{", + "\t\t$2", + "\t},function(${3:data}){", + "\t\t$0", + "\t},'${4:json}'", + ");" + ], + "prefix": "mget", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.getJSON()": { + "body": ["mui.getJSON('$1',{$2},function($3){", "\t\t$4", "\t}", ");$0"], + "prefix": "mjson", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.init": { + "body": ["mui.init({$0})"], + "prefix": "minit", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.init({侧滑返回})": { + "body": ["mui.init({", "\tswipeBack:${1|true,false|} ", ");$0"], + "prefix": "minswipeback", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.init({刷新组件})": { + "body": [ + "mui.init({", + " pullRefresh : {", + " container:'#${1:refreshContainer}',", + " down : {", + " callback :${2:pullfresh}", + " },", + " up : {", + " callback :${3:pullfresh} ", + " }", + " }", + "});$0" + ], + "prefix": "minpullRefresh", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.init({子页面})": { + "body": [ + "mui.init({", + "\tsubpages:[{", + "\t url:'${1:url}',", + " id:'${2:id}',", + " styles:{", + " $3", + " },", + " extras:{$4}", + "\t}]", + "})$0" + ], + "prefix": "minsubpage", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.init({手势事件})": { + "body": [ + "mui.init({", + " \tgestureConfig:{", + "\t tap: ${1|true,false|}, ", + "\t doubletap: ${2|true,false|}, ", + "\t longtap: ${3|true,false|}, ", + "\t swipe: ${4|true,false|}, ", + "\t drag: ${5|true,false|}, ", + "\t hold:${6|false,true|},", + "\t release:${7|false,true|}", + " \t}", + "});$0" + ], + "prefix": "mingesture", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.init({按键绑定})": { + "body": [ + "mui.init({", + "\tkeyEventBind: {", + "\t\tbackbutton: ${1|true,false|}, ", + "\t\tmenubutton: ${2|true,false|} ", + "\t},", + "})" + ], + "prefix": "minkeyevent", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.init({设置状态栏颜色})": { + "body": ["mui.init({", "\tstatusBarBackground:'#${1:FFFFFF}'", "})"], + "prefix": "minstatusbar", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.init({重写窗口关闭逻辑})": { + "body": ["mui.init({", "\tbeforeback:function () {", "\t\t$0", "\t}", "})"], + "prefix": "minbeforeback", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.init({预加载})": { + "body": [ + "mui.init({", + "\tpreloadPages:[{", + "\t url:'${1:url}',", + " id:'${2:id}',", + " styles:{", + " $3", + " },", + " extras:{$4}", + "\t}]", + "})$0" + ], + "prefix": "minpreload", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.init({预加载数量})": { + "body": ["preloadLimit:${1:5}"], + "prefix": "minprelimit", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.later()": { + "body": ["mui.later(function(){", "\t$2 ", "},${1|500,1000,1500,2000|})"], + "prefix": "mlater", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.mask": { + "body": [ + "var ${1:mask} = mui.createMask(function () {", + "\t$2", + "})", + "${1:mask}.show()" + ], + "prefix": "mmask", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.off": { + "body": ["mui('$1').off('${2:tap}','$3',function($4){", " $0", "}) "], + "prefix": "mmoff", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.on": { + "body": ["mui('$1').on('${2:tap}','$3',function($4){", " $0", "}) "], + "prefix": "mmon", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.open": { + "body": ["mui.openWindow('${1:url}','${2:id}',{$3})"], + "prefix": "mopen", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.os": { + "body": ["mui.os."], + "prefix": "mos", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.plusReady()": { + "body": ["mui.plusReady(function () {", " $1", "})$0"], + "prefix": "mplusready", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.post()": { + "body": [ + "mui.post('$1',{", + "\t\t$2", + "\t},function(${3:data}){", + "\t\t$0", + "\t},'${4:json}'", + ");" + ], + "prefix": "mpost", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.preload()": { + "body": [ + "mui.preload({", + "\turl:'${1:url}',", + "\tid:'${2:id}',", + "\tstyles:{$3},//窗口参数", + "\textras:{$4}//自定义扩展参数", + "})$0" + ], + "prefix": "mpreload", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "mui.prompt()": { + "body": [ + " mui.prompt('${1:text}','${2:defaultText}','${3:title}',['${4:取消}','${5:确认}'],function (${6:e}) {", + " ${6:e}.index$0", + "}${7:,'div'})" + ], + "prefix": "mdprompt", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.ready": { + "body": ["mui.ready(function () {", "\t$0", "})"], + "prefix": "mready", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.scrollTo()": { + "body": [ + "mui.scrollTo(${1:ypos},${2:duration},${3:/function () {", + " \t", + "}}$0" + ], + "prefix": "mscrollto", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.toast()": { + "body": ["mui.toast('${1:message}')$0"], + "prefix": "mdtoast", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "mui.trigger()": { + "body": ["mui.trigger(${1:dom},'${3:tap}'${4:,{a:'as'}})"], + "prefix": "mtrigger", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "navigator.userAgent;": { + "body": ["navigator.userAgent"], + "prefix": "nuser", + "scope": "typescript,javascript" + }, + "plus.Screen": { + "body": ["plus.Screen."], + "prefix": "pScreen", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.accelerometer": { + "body": ["plus.accelerometer."], + "prefix": "pacce", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.android": { + "body": ["plus.android."], + "prefix": "pandroid", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.audio": { + "body": ["plus.audio."], + "prefix": "paudio", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.barcode": { + "body": ["plus.barcode."], + "prefix": "pbarcode", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.camera": { + "body": ["plus.camera."], + "prefix": "pcamera", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.contacts": { + "body": ["plus.contacts."], + "prefix": "pcontacts", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.device": { + "body": ["plus.device."], + "prefix": "pdevice", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.display": { + "body": ["plus.display."], + "prefix": "pdisplay", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.downloader": { + "body": ["plus.downloader."], + "prefix": "pdown", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.gallery": { + "body": ["plus.gallery."], + "prefix": "pgallery", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.geolocation": { + "body": ["plus.geolocation."], + "prefix": "pgeolocation", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.io": { + "body": ["plus.io."], + "prefix": "pio", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.ios": { + "body": ["plus.ios."], + "prefix": "pios", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.key": { + "body": ["plus.key."], + "prefix": "pkey", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.maps": { + "body": ["plus.maps."], + "prefix": "pmaps", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.messaging": { + "body": ["plus.messaging."], + "prefix": "pmessaging", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.nativeObj": { + "body": ["plus.nativeObj."], + "prefix": "pnativeObj", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.nativeUI": { + "body": ["plus.nativeUI."], + "prefix": "pnativeUI", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.nativeUI.alert": { + "body": ["plus.nativeUI.alert($1)"], + "prefix": "pnalert", + "project": "uni-app,App,Wap2App", + "scope": "typescript,javascript" + }, + "plus.navigator": { + "body": ["plus.navigatorsc."], + "prefix": "pnavigator", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.net": { + "body": ["plus.net."], + "prefix": "pnet", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.networkinfo": { + "body": ["plus.networkinfo."], + "prefix": "pnetworkinfo", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.oauth": { + "body": ["plus.oauth."], + "prefix": "poauth", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.orientation": { + "body": ["plus.orientation."], + "prefix": "porientation", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.os": { + "body": ["plus.os."], + "prefix": "pos", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.payment": { + "body": ["plus.payment."], + "prefix": "ppayment", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.proximity": { + "body": ["plus.proximity."], + "prefix": "pproximity", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.push": { + "body": ["plus.push."], + "prefix": "ppush", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.runtime": { + "body": ["plus.runtime."], + "prefix": "pruntime", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.share": { + "body": ["plus.share."], + "prefix": "pshare", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.speech": { + "body": ["plus.speech.$0"], + "prefix": "pspeech", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.statistic": { + "body": ["plus.statistic."], + "prefix": "pstatistic", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.storage": { + "body": ["plus.storage."], + "prefix": "pstorage", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.uploader": { + "body": ["plus.uploader."], + "prefix": "puploader", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.webview": { + "body": ["plus.webview."], + "prefix": "pweb", + "project": "uni-app,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plus.zip": { + "body": ["plus.zip."], + "prefix": "pzip", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "plusReady": { + "body": [ + "function plusReady(){", + " $0", + "}", + "if (window.plus) {", + " plusReady()", + "} else{", + " document.addEventListener('plusready',plusReady,false);", + "}" + ], + "prefix": "pready", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "querySelector": { + "body": ["document.querySelector('$1').$0"], + "prefix": "ds", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "querySelectoraddEventListener": { + "body": [ + "document.querySelector('$1').addEventListener('${2:tap}',function ($3) {", + " $0", + "})" + ], + "prefix": "dsa", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "redirectTo({...})": { + "body": ["redirectTo({", "\turl: '$1'", "});$0"], + "prefix": "redirectTo", + "scope": "uni.method.js" + }, + "return false": { + "body": ["return false;"], + "prefix": "rfalse", + "scope": "typescript,javascript" + }, + "return false;": { + "body": ["return false;"], + "prefix": "rfalse", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "return true": { + "body": ["return true;"], + "prefix": "rtrue", + "scope": "typescript,javascript" + }, + "return true;": { + "body": ["return true;"], + "prefix": "rtrue", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript" + }, + "setTimeout function": { + "body": ["setTimeout(function() {$0}, ${1:10});"], + "prefix": "settimeout", + "scope": "typescript,javascript" + }, + "switch_case": { + "body": [ + "switch (${1}){", + "\tcase ${2:value}:", + "\t\tbreak;", + "\tdefault:", + "\t\tbreak;", + "}" + ], + "prefix": "switchcase", + "scope": "typescript,javascript" + }, + "try{}catch(e)": { + "body": [ + "try{", + "\t$0", + "}catch(e){", + "\t//TODO handle the exception", + "}" + ], + "prefix": "trycatch", + "scope": "typescript,javascript" + }, + "typeof": { + "body": ["typeof($1)==\"${2:undefined}\""], + "prefix": "typeoff", + "scope": "typescript,javascript" + }, + "typeof!": { + "body": ["typeof($1)!=\"${2:undefined}\""], + "prefix": "typeof!", + "scope": "typescript,javascript" + }, + "uAlert": { + "body": [ + "uni.showModal({", + "\tcontent: '$1',", + "\tshowCancel: false", + "});" + ], + "prefix": "ualert", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uConfirm": { + "body": [ + "uni.showModal({", + "\tcontent: '$1',", + "\tsuccess: function (res) {", + "\t\tif (res.confirm) {", + "\t\t\t$2", + "\t\t} else if (res.cancel) {", + "\t\t\t$3", + "\t\t}", + "\t}", + "});" + ], + "prefix": "uconfirm", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uGetLocation": { + "body": [ + "uni.getLocation({", + "\ttype: 'wgs84',", + "\tsuccess: res => {$0}", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "ugetlocation", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uLogin": { + "body": [ + "uni.login({", + "\tprovider: '$1',", + "\tsuccess: res => {},", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "ulogin", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uNavigateBack": { + "body": ["uni.navigateBack({", "\tdelta: $1", "});"], + "prefix": "unavigateback", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uNavigateTo": { + "body": [ + "uni.navigateTo({", + "\turl: '$1',", + "\tsuccess: res => {},", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "unavigateto", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uPay": { + "body": [ + "uni.requestPayment({", + "\tprovider: '$1',", + "\torderInfo: '$2',", + "\tsuccess: res => {},", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "upay", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uRedirectTo": { + "body": [ + "uni.redirectTo({", + "\turl: '$1',", + "\tsuccess: res => {},", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "uredirectto", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uRequest": { + "body": [ + "uni.request({", + "\turl: '$1',", + "\tmethod: 'GET$2',", + "\tdata: {$3},", + "\tsuccess: res => {$0},", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "urequest", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uRequestPayment": { + "body": [ + "uni.requestPayment({", + "\tprovider: '$1',", + "\torderInfo: '$2',", + "\tsuccess: res => {},", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "urequestpayment", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uShare": { + "body": [ + "uni.share({", + "\tprovider: '$1',", + "\ttype: 0$2,", + "\ttitle: '$3',", + "\thref: '$4',", + "\timageUrl: '$5',", + "\tsuccess: res => {},", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "ushare", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uShowActionSheet": { + "body": [ + "uni.showActionSheet({", + "\titemList: $1,", + "\tsuccess: res => {},", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "ushowactionsheet", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uShowLoading": { + "body": ["uni.showLoading({", "\ttitle: '$1',", "\tmask: false", "});"], + "prefix": "ushowloading", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uShowModal": { + "body": [ + "uni.showModal({", + "\ttitle: '$1',", + "\tcontent: '$2',", + "\tshowCancel: false$3,", + "\tcancelText: '$4',", + "\tconfirmText: '$5',", + "\tsuccess: res => {$0},", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "ushowmodal", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uShowToast": { + "body": ["uni.showToast({", "\ttitle: '$1'", "});"], + "prefix": "ushowtoast", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uShowToastNoIcon": { + "body": ["uni.showToast({", "\ttitle: '$1',", "\ticon: 'none'", "});"], + "prefix": "ushowtoastnoicon", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uStartPullDownRefresh": { + "body": [ + "uni.startPullDownRefresh({", + "\tsuccess: res => {},", + "\tfail: () => {},", + "\tcomplete: () => {}", + "});" + ], + "prefix": "ustartpulldownrefresh", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "uStopPullDownRefresh": { + "body": ["uni.stopPullDownRefresh();"], + "prefix": "ustoppulldownrefresh", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "use strict": { + "body": ["\"use strict\""], + "prefix": "use", + "scope": "typescript,javascript" + }, + "var a=[];": { + "body": ["var ${1:a}=[$2];"], + "prefix": "vara", + "scope": "typescript,javascript" + }, + "var c = canvas": { + "body": [ + "var ${2:c} = document.getElementById(\"$1\").getContext(\"2d\");" + ], + "prefix": "varc", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "var currentWebview": { + "body": ["var currentWebview = this.\\$mp.page.\\$getAppWebview()"], + "prefix": "varcw", + "project": "uni-app", + "scope": "typescript,javascript" + }, + "var i=0;": { + "body": ["var ${1:i}=${2:0};"], + "prefix": "vari", + "scope": "typescript,javascript" + }, + "var l=a.length;": { + "body": ["var ${1:l}=${2:a}.length;"], + "prefix": "varl", + "scope": "typescript,javascript" + }, + "var s=\"\";": { + "body": ["var ${1:s}=\"$2\";"], + "prefix": "vars", + "scope": "typescript,javascript" + }, + "var xhr": { + "body": [ + "var ${1:xhr} = new XMLHttpRequest();", + "xhr.open(\"${2:POST}\",\"$3\",${4:true});" + ], + "prefix": "varxhr", + "scope": "typescript,javascript" + }, + "while": { + "body": ["while (${1:condition}){", "\t$0", "}"], + "prefix": "whilee", + "scope": "typescript,javascript" + }, + "windowaddEventListener": { + "body": [ + "window.addEventListener('${1:scroll}',function ($2) {", + " $0", + "})" + ], + "prefix": "wad", + "project": "Web,App,Wap2App", + "scope": "typescript,javascript", + "triggerAssist": true + }, + "with": { + "body": ["with ($1){", "\t$0", "}"], + "prefix": "withh", + "scope": "typescript,javascript" + } +} diff --git a/.vscode/vue-html.code-snippets b/.vscode/vue-html.code-snippets new file mode 100644 index 0000000..3b9f9b7 --- /dev/null +++ b/.vscode/vue-html.code-snippets @@ -0,0 +1,668 @@ +{ + "#ifdef": { + "body": [ + "", + "$0", + "" + ], + "prefix": "ifdef", + "project": "uni-app", + "scope": "vue-html" + }, + "#ifndef": { + "body": [ + "", + "$0", + "" + ], + "prefix": "ifndef", + "project": "uni-app", + "scope": "vue-html" + }, + "Vue Base": { + "body": [ + "", + "", + "", + "", + "" + ], + "description": "Base for Vue File", + "prefix": "vbase", + "scope": "vue-html" + }, + "Vue Class Binding": { + "body": ["<${1|div|} :class=\"{ ${2:className}: ${3:data} }\"><,${1:div}>"], + "description": "vue class binding", + "prefix": "vclass", + "scope": "vue-html" + }, + "Vue Class Binding Object": { + "body": [ + "<${1|div|} :class=\"[${2:classNameA}, ${3:classNameB}]\"><,${1:div}>" + ], + "description": "vue class binding", + "prefix": "vclass-obj", + "scope": "vue-html" + }, + "Vue Component with Props Binding": { + "body": ["<${1|component|} :${1:propName}=\"${0}\"><,${1:component}>"], + "description": "component element with props", + "prefix": "vel-props", + "scope": "vue-html" + }, + "Vue Image Source Binding": { + "body": [ + "\"${2:altText}\"/" + ], + "description": "image source binding", + "prefix": "vsrc", + "scope": "vue-html" + }, + "Vue Multiple Conditional Class Bindings": { + "body": [ + "<${1|div|} :class=\"[${2:classNameA}, {${3:classNameB} : ${4:condition}}]\"><,${1:div}>" + ], + "description": "vue multiple conditional class bindings", + "prefix": "vclass-obj-mult", + "scope": "vue-html" + }, + "Vue Nuxt Routing Link": { + "body": ["${1:page}"], + "description": "nuxt routing link", + "prefix": "vnuxtl", + "scope": "vue-html" + }, + "Vue Style Binding": { + "body": [ + "<${1|div|} :style=\"{ fontSize: ${2:data} + 'px' }\"><,${1:div}>" + ], + "description": "vue inline style binding", + "prefix": "vstyle", + "scope": "vue-html" + }, + "Vue Style Binding Object": { + "body": [ + "<${1|div|} :style=\"[${2:styleObjectA}, ${3:styleObjectB]}\"><,${1:div}>" + ], + "description": "vue inline style binding, objects", + "prefix": "vstyle-obj", + "scope": "vue-html" + }, + "Vue Transition Component with JavaScript Hooks": { + "body": [ + "", + "", + "" + ], + "description": "transition component js hooks", + "prefix": "vanim", + "scope": "vue-html" + }, + "Vue v-for": { + "body": [ + "<${1:div} v-for=\"${2:item} in ${2:item}s\" :key=\"${2:item}.id\">", + "\t{{ ${2:item} }}", + "" + ], + "description": "vfor statement", + "prefix": "vfor", + "scope": "vue-html" + }, + "Vue v-model Directive": { + "body": [""], + "description": "v-model directive", + "prefix": "vmodel", + "scope": "vue-html" + }, + "Vue v-model Number Directive": { + "body": [ + "" + ], + "description": "v-model directive number input", + "prefix": "vmodel-num", + "scope": "vue-html" + }, + "Vue v-on Shortcut Directive": { + "body": ["@click=\"${1:handler}(${2:arg}, $event)\""], + "description": "v-on click handler with arguments", + "prefix": "von", + "scope": "vue-html" + }, + "uAccordion": { + "body": [ + "", + "\t", + "\t\t", + "\t\t\t折叠面板{{index}}", + "\t\t", + "\t\t", + "\t\t\t", + "\t\t\t\thello uni-app", + "\t\t\t\thello uni-app", + "\t\t\t\thello uni-app", + "\t\t\t", + "\t\t", + "\t", + "" + ], + "prefix": "uaccordion", + "project": "uni-app", + "scope": "vue-html" + }, + "uAudio": { + "body": [ + "" + ], + "prefix": "uaudio", + "project": "uni-app", + "scope": "vue-html" + }, + "uBadge": { + "body": [""], + "prefix": "ubadge", + "project": "uni-app", + "scope": "vue-html" + }, + "uButton": { + "body": [""], + "prefix": "ubutton", + "project": "uni-app", + "scope": "vue-html" + }, + "uCalendar": { + "body": [ + "" + ], + "prefix": "ucalendar", + "project": "uni-app", + "scope": "vue-html" + }, + "uCard": { + "body": [ + "", + "\t内容主体,可自定义内容及样式$4", + "" + ], + "prefix": "ucard", + "project": "uni-app", + "scope": "vue-html" + }, + "uCheckbox": { + "body": [ + "" + ], + "prefix": "ucheckbox", + "project": "uni-app", + "scope": "vue-html" + }, + "uCollapse": { + "body": [ + "", + "\t", + "\t\t内容$3", + "\t", + "" + ], + "prefix": "uCollapse", + "project": "uni-app", + "scope": "vue-html" + }, + "uCountDown": { + "body": [ + "" + ], + "prefix": "ucountdown", + "project": "uni-app", + "scope": "vue-html" + }, + "uDrawer": { + "body": [ + "", + "\t", + "\t\t$2", + "\t", + "" + ], + "prefix": "uDrawer", + "project": "uni-app", + "scope": "vue-html" + }, + "uEditor": { + "body": [""], + "prefix": "uEditor", + "project": "uni-app", + "scope": "vue-html" + }, + "uForm": { + "body": [ + "
", + "\t", + "\t\tswitch$1", + "\t\t", + "\t", + "\t", + "\t\tslider", + "\t\t", + "\t", + "\t", + "\t\tinput", + "\t\t", + "\t", + "\t", + "\t\tradio", + "\t\t", + "\t\t", + "\t\t", + "\t\t", + "\t", + "\t", + "\t\tcheckbox", + "\t\t", + "\t\t\t", + "\t\t\t", + "\t\t", + "\t", + "\t", + "\t\t", + "\t\t", + "\t", + "
" + ], + "prefix": "uform", + "project": "uni-app", + "scope": "vue-html" + }, + "uGrid": { + "body": [""], + "prefix": "ugrid", + "project": "uni-app", + "scope": "vue-html" + }, + "uIcon": { + "body": [""], + "prefix": "uicon", + "project": "uni-app", + "scope": "vue-html" + }, + "uImage": { + "body": ["$0"], + "prefix": "uimage", + "project": "uni-app", + "scope": "vue-html" + }, + "uInput": { + "body": [""], + "prefix": "uinput", + "project": "uni-app", + "scope": "vue-html" + }, + "uList": { + "body": [ + "", + "\t", + "\t", + "" + ], + "prefix": "ulist", + "project": "uni-app", + "scope": "vue-html" + }, + "uListMedia": { + "body": [ + "", + "\t", + "\t\t", + "\t\t\t", + "\t\t\t", + "\t\t\t\t{{item.title$3}}", + "\t\t\t\t{{item.content$4}}", + "\t\t\t", + "\t\t", + "\t", + "" + ], + "prefix": "ulistmedia", + "project": "uni-app", + "scope": "vue-html" + }, + "uLoadMore": { + "body": [ + "" + ], + "prefix": "uloadmore", + "project": "uni-app", + "scope": "vue-html" + }, + "uMap": { + "body": [""], + "prefix": "umap", + "project": "uni-app", + "scope": "vue-html" + }, + "uNavBar": { + "body": [ + "" + ], + "prefix": "unavbar", + "project": "uni-app", + "scope": "vue-html" + }, + "uNavigator": { + "body": ["$0"], + "prefix": "unavigator", + "project": "uni-app", + "scope": "vue-html" + }, + "uNoticeBar": { + "body": [""], + "prefix": "uNoticeBar", + "project": "uni-app", + "scope": "vue-html" + }, + "uNumberBox": { + "body": [""], + "prefix": "unumberbox", + "project": "uni-app", + "scope": "vue-html" + }, + "uPagination": { + "body": [ + "" + ], + "prefix": "uPagination", + "project": "uni-app", + "scope": "vue-html" + }, + "uPicker": { + "body": [ + "", + "\tpicker组件", + "" + ], + "prefix": "upicker", + "project": "uni-app", + "scope": "vue-html" + }, + "uPickerView": { + "body": [ + "", + "\t", + "\t\t$0", + "\t", + "\t", + "\t\t$2", + "\t", + "\t", + "\t\t", + "\t", + "" + ], + "prefix": "upickerview", + "project": "uni-app", + "scope": "vue-html" + }, + "uPopup": { + "body": [ + "" + ], + "prefix": "upopup", + "project": "uni-app", + "scope": "vue-html" + }, + "uProductList": { + "body": [ + "", + "\t", + "\t\t", + "\t\t\t", + "\t\t", + "\t\t{{product.title}}", + "\t\t", + "\t\t\t¥{{product.originalPrice}}", + "\t\t\t¥{{product.favourPrice}}", + "\t\t\t{{product.tip}}", + "\t\t", + "\t", + "" + ], + "prefix": "uproductlist", + "project": "uni-app", + "scope": "vue-html" + }, + "uProgress": { + "body": [" "], + "prefix": "uprogress", + "project": "uni-app", + "scope": "vue-html" + }, + "uRadio": { + "body": [ + "" + ], + "prefix": "uradio", + "project": "uni-app", + "scope": "vue-html" + }, + "uRate": { + "body": [""], + "prefix": "uRate", + "project": "uni-app", + "scope": "vue-html" + }, + "uRichText": { + "body": [""], + "prefix": "urichtext", + "project": "uni-app", + "scope": "vue-html" + }, + "uScrollView": { + "body": [ + "", + "\t$0", + "\t", + "\t", + "\t", + "" + ], + "prefix": "uscrollview", + "project": "uni-app", + "scope": "vue-html" + }, + "uSegmentedControl": { + "body": [ + "", + "", + "\t", + "\t\t选项卡1的内容", + "\t", + "\t", + "\t\t选项卡2的内容", + "\t", + "\t", + "\t\t选项卡3的内容", + "\t", + "" + ], + "prefix": "usegmentedcontrol", + "project": "uni-app", + "scope": "vue-html" + }, + "uSlider": { + "body": [""], + "prefix": "uslider", + "project": "uni-app", + "scope": "vue-html" + }, + "uSteps": { + "body": [""], + "prefix": "usteps", + "project": "uni-app", + "scope": "vue-html" + }, + "uSwipeAction": { + "body": [ + "", + "\t$2", + "" + ], + "prefix": "uSwipeAction", + "project": "uni-app", + "scope": "vue-html" + }, + "uSwiper": { + "body": [ + "", + "\t", + "\t\t$1", + "\t", + "\t", + "\t\t$2", + "\t", + "\t", + "\t\t$0", + "\t", + "" + ], + "prefix": "uswiper", + "project": "uni-app", + "scope": "vue-html" + }, + "uSwipermsg": { + "body": [ + "", + "\t", + "\t\t", + "\t", + "\t", + "\t\t", + "\t\t\t消息1", + "\t\t", + "\t\t", + "\t\t\t消息2", + "\t\t", + "\t\t", + "\t\t\t消息3", + "\t\t", + "\t", + "" + ], + "prefix": "uswipermsg", + "project": "uni-app", + "scope": "vue-html" + }, + "uSwitch": { + "body": [""], + "prefix": "uswitch", + "project": "uni-app", + "scope": "vue-html" + }, + "uTag": { + "body": [""], + "prefix": "utag", + "project": "uni-app", + "scope": "vue-html" + }, + "uTemplate": { + "body": [""], + "prefix": "utemplate", + "project": "uni-app", + "scope": "vue-html" + }, + "uText": { + "body": ["$0"], + "prefix": "utext", + "project": "uni-app", + "scope": "vue-html" + }, + "uTextarea": { + "body": ["