├── .eslintrc.json ├── .gitignore ├── .npmignore ├── README.md ├── babel.config.js ├── dist └── com.apex.ui.quickapp.release.rpk ├── package.json ├── sign ├── debug │ ├── certificate.pem │ └── private.pem └── release │ ├── certificate.pem │ └── private.pem └── src ├── app.ux ├── images ├── .DS_Store ├── loading.gif ├── logo-d.png └── ufo.svg ├── manifest.json ├── pages ├── accordion │ └── index.ux ├── action-sheet │ └── index.ux ├── alert │ └── index.ux ├── avatar │ └── index.ux ├── badge │ └── index.ux ├── barcode │ └── index.ux ├── button │ └── index.ux ├── calendar │ └── index.ux ├── card │ └── index.ux ├── checkbox │ └── index.ux ├── circle │ └── index.ux ├── color │ └── index.ux ├── countdown │ └── index.ux ├── counter │ └── index.ux ├── dialog │ └── index.ux ├── divider │ └── index.ux ├── fab-button │ └── index.ux ├── filter-bar │ └── index.ux ├── gallery │ └── index.ux ├── home │ └── index.ux ├── icon │ └── index.ux ├── image │ └── index.ux ├── index │ └── index.ux ├── input-number │ └── index.ux ├── input │ └── index.ux ├── keyboard │ └── index.ux ├── load-more │ └── index.ux ├── mask │ └── index.ux ├── media │ └── index.ux ├── message │ └── index.ux ├── navbar │ └── index.ux ├── pagination │ └── index.ux ├── popover │ └── index.ux ├── popup │ └── index.ux ├── prompt │ └── index.ux ├── qrcode │ └── index.ux ├── radio │ └── index.ux ├── rating │ └── index.ux ├── result │ └── index.ux ├── search-bar │ └── index.ux ├── segmented-control │ └── index.ux ├── select │ └── index.ux ├── spin │ └── index.ux ├── steps │ └── index.ux ├── sticky │ └── index.ux ├── switch │ └── index.ux ├── tabbar │ ├── index.ux │ ├── page1 │ │ └── index.ux │ └── page2 │ │ └── index.ux ├── tag │ └── index.ux ├── textarea │ └── index.ux ├── toast │ └── index.ux ├── upload │ └── index.ux └── vcode │ └── index.ux └── util.js /.eslintrc.json: -------------------------------------------------------------------------------- 1 | { 2 | "env": { 3 | "commonjs": true 4 | }, 5 | "extends": "eslint:recommended", 6 | "parser": "babel-eslint", 7 | "parserOptions": { 8 | "sourceType": "module", 9 | "ecmaFeatures": { 10 | "experimentalObjectRestSpread": true, 11 | "jsx": true 12 | } 13 | }, 14 | "globals": { 15 | "loadData": false, 16 | "saveData": false, 17 | "history": false, 18 | "console": true, 19 | "setTimeout": false, 20 | "clearTimeout": false, 21 | "setInterval": false, 22 | "clearInterval": false 23 | }, 24 | "plugins": [ 25 | "hybrid" 26 | ], 27 | "rules": { 28 | "indent": [ 29 | "warn", 30 | 2 31 | ], 32 | "no-console": [ 33 | "warn", 34 | { 35 | "allow": [ 36 | "info", 37 | "warn", 38 | "error" 39 | ] 40 | } 41 | ], 42 | "no-unused-vars": [ 43 | "warn", 44 | { 45 | "varsIgnorePattern": "prompt" 46 | } 47 | ], 48 | "quotes": [ 49 | "warn", 50 | "single", 51 | { 52 | "avoidEscape": true, 53 | "allowTemplateLiterals": true 54 | } 55 | ], 56 | "linebreak-style": [ 57 | "warn", 58 | "unix" 59 | ], 60 | "semi": [ 61 | "warn", 62 | "never" 63 | ] 64 | } 65 | } -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | .idea/ 2 | .ide/ 3 | .DS_Store 4 | .vscode 5 | src/.DS_Store 6 | src/images/.DS_Store 7 | 8 | node_modules/ 9 | build/ 10 | dist 11 | 12 | package-lock.json 13 | yarn.lock 14 | -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | build 3 | dist -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Apex-UI组件库示例 2 | 示例源码,欢迎使用调试器扫描以下二维码体验。如果调试器扫码不成功,可以用浏览器扫码下载到本地后安装查看。 3 | 4 | 5 | 6 | ## 使用 7 | - [Apex-UI组件库官方文档](https://vivoquickapp.github.io/apex-ui-docs/) 8 | - [Apex-UI组件库源码](https://github.com/vivoquickapp/apex-ui) 9 | - 使用[快应用开发工具](https://www.quickapp.cn/docCenter/IDEPublicity)打开该示例代码。 10 | 11 | ## 贡献 12 | 13 | 如果你有 bug 反馈或其他任何建议,欢迎提 issue 或者 PR 给我们。 14 | 15 | ## 截图 16 | 17 | ![截图](https://github.com/vivoquickapp/apex-ui-docs/blob/master/docs/assets/apex-ui-sample.jpg?raw=true) 18 | -------------------------------------------------------------------------------- /babel.config.js: -------------------------------------------------------------------------------- 1 | module.exports = function(api) { 2 | api.cache(true) 3 | return { 4 | presets: ['@babel/preset-env'], 5 | plugins: ['@babel/plugin-transform-modules-commonjs'], 6 | babelrcRoots: ['.', 'node_modules'] 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /dist/com.apex.ui.quickapp.release.rpk: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vivoquickapp/apex-ui-sample/006acf11ceacc872e39b533b1572477619b1233b/dist/com.apex.ui.quickapp.release.rpk -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "apex-ui-sample", 3 | "version": "1.0.0", 4 | "subversion": { 5 | "toolkit": "0.6.2" 6 | }, 7 | "description": "apex-ui components sample quickapp", 8 | "scripts": { 9 | "build": "hap build", 10 | "release": "hap release", 11 | "server": "hap server", 12 | "watch": "hap watch" 13 | }, 14 | "devDependencies": { 15 | "@types/quickapp": "git+https://github.com/vivoquickapp/quickapp-types.git", 16 | "apex-ui": "latest", 17 | "babel-eslint": "^10.0.1", 18 | "eslint": "^5.12.1", 19 | "eslint-plugin-hybrid": "0.0.5", 20 | "hap-toolkit": "^0.6.2", 21 | "less": "^3.9.0", 22 | "less-loader": "^4.1.0" 23 | }, 24 | "browserslist": [ 25 | "chrome 65" 26 | ] 27 | } 28 | -------------------------------------------------------------------------------- /sign/debug/certificate.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDMTCCAhmgAwIBAgIJAMKpjyszxkDpMA0GCSqGSIb3DQEBCwUAMC4xCzAJBgNV 3 | BAYTAkNOMQwwCgYDVQQKDANSUEsxETAPBgNVBAMMCFJQS0RlYnVnMCAXDTE3MDQx 4 | OTAyMzE0OVoYDzIxMTYwMzI2MDIzMTQ5WjAuMQswCQYDVQQGEwJDTjEMMAoGA1UE 5 | CgwDUlBLMREwDwYDVQQDDAhSUEtEZWJ1ZzCCASIwDQYJKoZIhvcNAQEBBQADggEP 6 | ADCCAQoCggEBAK3kPd9jzvTctTIA3XNZVv9cHHDbAc6nTBfdZp9mtPOTkXFpvyCb 7 | kL0QjOog0+1pv8D7dFeP4ptWXU5CT3ImvaPR+16dAtMRcsxEr5q4zieJzx3O6huL 8 | UBa1k+xrzjXpRzkcOysmc8fTxt0tAwbDgJ2AA5TlXLTcVyb7GmJ+hl5CjnhoG5NN 9 | LrkqI7S29c1U3uokj8Q7hzaj0TURu/uB5ZIMCLZY9KFDugqaEcvmUyJiD0fuV6sA 10 | O/4kpiZUOnhV8/xWpRbMI4WFQsfgLOCV+X9uzUa29D677y//46t/EDSuQTHyBZbl 11 | AcNMENkpMWZsH7J/+F19+U0/Hd5bJgneVRkCAwEAAaNQME4wHQYDVR0OBBYEFKDN 12 | SZtt47ttOBDQzIchFYyxsg3mMB8GA1UdIwQYMBaAFKDNSZtt47ttOBDQzIchFYyx 13 | sg3mMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBABaZctNrn4gLmNf/ 14 | eNJ3x5CJIPjPwm6j9nwKhtadJ6BF+TIzSkJuHSgxULjW436F37otv94NPzT5PCBF 15 | WxgXoqgLqnWwvsaqC4LUEjsZviWW4CB824YDUquEUVGFLE/U5KTZ7Kh1ceyUk4N8 16 | +mtkXkanWoBBk0OF24lNrAsNLB63yTLr9HxEe75+kmvxf1qVJUGtaOEWIhiFMiAB 17 | 5D4w/j2EFWktumjuy5TTwU0zhl52bc8V9SNixM1IaqzNrVPrdjv8viUX548pU3WT 18 | xZ5ylDsxhMC1q4BXQVeIY8C0cMEX+WHOmOCvWrkxCkP91pKsSPkuVrWlzrkn8Ojo 19 | swP6sBw= 20 | -----END CERTIFICATE----- 21 | -------------------------------------------------------------------------------- /sign/debug/private.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCt5D3fY8703LUy 3 | AN1zWVb/XBxw2wHOp0wX3WafZrTzk5Fxab8gm5C9EIzqINPtab/A+3RXj+KbVl1O 4 | Qk9yJr2j0ftenQLTEXLMRK+auM4nic8dzuobi1AWtZPsa8416Uc5HDsrJnPH08bd 5 | LQMGw4CdgAOU5Vy03Fcm+xpifoZeQo54aBuTTS65KiO0tvXNVN7qJI/EO4c2o9E1 6 | Ebv7geWSDAi2WPShQ7oKmhHL5lMiYg9H7lerADv+JKYmVDp4VfP8VqUWzCOFhULH 7 | 4Czglfl/bs1GtvQ+u+8v/+OrfxA0rkEx8gWW5QHDTBDZKTFmbB+yf/hdfflNPx3e 8 | WyYJ3lUZAgMBAAECggEBAJTnCBBdUB+fSs1prjeS/gsmnfgJoY+K9H7PCIxgj3yw 9 | FXAvZAmRDKzJGlF2EOOQlTG0YNiGDj6EAtv7rjoKcINyULSg8IU6wLmn61MrAuUa 10 | fa+Bujgh4E/B5swhOHAztNhzkzsM70Hi17wXSislh+HWd7qteOgqcbqgdOR4gaj+ 11 | HUqtcxG3H3hCL3dWugnjLZMtestLKGHSSZvbQNjYM3kKy2LvO8NpxmDE4a+TXygK 12 | qhaZjmS/dc/nJBJzOfkzby58RvGbzlJflfW/Uu3/gizj13GFQKWonq1xh630RAhv 13 | xX5ySok2aAx/+/SiJSpNXvM09grQuoORSr7D1tm+5rECgYEA3vf0hRfua0XAOu6f 14 | pyzNvLRRJ/pEew7XpNPCyS2TuMTd1yvXjGVxQfP46N6x1IM3SRU0zE+LSk80EF7l 15 | u1Or7GyCEhabYNe/7P2F8ENP73Do0HwvcI1jGrgr6r9oK0J27Xei+f6Q0bgJOPI2 16 | qaLj+V37cOjkNSM1mhTjtDwK8k0CgYEAx6cMrkjHl1+lDIIOc3qAEL3jb3xQveYk 17 | WrMF/B+j048k6boU4VvFJAIyQxOxMNxLjw3/9+zXCFJT4WaZK3TMXlg614ASGx3H 18 | tKjJM9O07ywwMq1gbutFS4nHCg3L3Os6esL0SPwMdATR3Yh22n5OGI9o+/aURulL 19 | GPEXef1Z2/0CgYEAgmwp5LxV4vu+8Pnp+4DSq4ISQr861XyeGTUhKEp3sUm+tgFY 20 | KTChakHKpHS3Mqa6bQ5xft08je/8dWL9IHFWDIqAHxKIOsKY6oh1k0/cbyPtmx45 21 | Ja4efV+jmMHzrfJH3KnxdCg7D+GFy4CrBtlYXuJhlO81pft9fC6h7yh8ArUCgYBq 22 | gvkl5Zftbs4rnRq+iqTVyagTKvwcQzIz3PwdZHfO/rfPpUFMdNv4eN99n3zRN0Vs 23 | HSjoiEazntA3GLgwUdBRqLpDi4SdSMbo337vkksdqbJQ5uPiaMuAIBG6kF+pDSkW 24 | ovkWErlGD+gySoI10FozihaVDRhPuFgjB0PiBcIxtQKBgGNSzX+Bx5+ux1Qny0Sn 25 | SUcBtepLnO8M8wafoGNyehbMnLzfuMbaDiJOdozGlBNHZTtPB3r4AYb8WnltdKW0 26 | 7i3fk26YZGiMVeUJvewA6/LOBEaqMdwoNwnoptvbR6ehHeE/PPtRtge2cD3bPIM7 27 | U9VlWgfgj9Dxfwhslqb9hmyp 28 | -----END PRIVATE KEY----- 29 | -------------------------------------------------------------------------------- /sign/release/certificate.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN CERTIFICATE----- 2 | MIIDMTCCAhmgAwIBAgIJAMKpjyszxkDpMA0GCSqGSIb3DQEBCwUAMC4xCzAJBgNV 3 | BAYTAkNOMQwwCgYDVQQKDANSUEsxETAPBgNVBAMMCFJQS0RlYnVnMCAXDTE3MDQx 4 | OTAyMzE0OVoYDzIxMTYwMzI2MDIzMTQ5WjAuMQswCQYDVQQGEwJDTjEMMAoGA1UE 5 | CgwDUlBLMREwDwYDVQQDDAhSUEtEZWJ1ZzCCASIwDQYJKoZIhvcNAQEBBQADggEP 6 | ADCCAQoCggEBAK3kPd9jzvTctTIA3XNZVv9cHHDbAc6nTBfdZp9mtPOTkXFpvyCb 7 | kL0QjOog0+1pv8D7dFeP4ptWXU5CT3ImvaPR+16dAtMRcsxEr5q4zieJzx3O6huL 8 | UBa1k+xrzjXpRzkcOysmc8fTxt0tAwbDgJ2AA5TlXLTcVyb7GmJ+hl5CjnhoG5NN 9 | LrkqI7S29c1U3uokj8Q7hzaj0TURu/uB5ZIMCLZY9KFDugqaEcvmUyJiD0fuV6sA 10 | O/4kpiZUOnhV8/xWpRbMI4WFQsfgLOCV+X9uzUa29D677y//46t/EDSuQTHyBZbl 11 | AcNMENkpMWZsH7J/+F19+U0/Hd5bJgneVRkCAwEAAaNQME4wHQYDVR0OBBYEFKDN 12 | SZtt47ttOBDQzIchFYyxsg3mMB8GA1UdIwQYMBaAFKDNSZtt47ttOBDQzIchFYyx 13 | sg3mMAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQELBQADggEBABaZctNrn4gLmNf/ 14 | eNJ3x5CJIPjPwm6j9nwKhtadJ6BF+TIzSkJuHSgxULjW436F37otv94NPzT5PCBF 15 | WxgXoqgLqnWwvsaqC4LUEjsZviWW4CB824YDUquEUVGFLE/U5KTZ7Kh1ceyUk4N8 16 | +mtkXkanWoBBk0OF24lNrAsNLB63yTLr9HxEe75+kmvxf1qVJUGtaOEWIhiFMiAB 17 | 5D4w/j2EFWktumjuy5TTwU0zhl52bc8V9SNixM1IaqzNrVPrdjv8viUX548pU3WT 18 | xZ5ylDsxhMC1q4BXQVeIY8C0cMEX+WHOmOCvWrkxCkP91pKsSPkuVrWlzrkn8Ojo 19 | swP6sBw= 20 | -----END CERTIFICATE----- 21 | -------------------------------------------------------------------------------- /sign/release/private.pem: -------------------------------------------------------------------------------- 1 | -----BEGIN PRIVATE KEY----- 2 | MIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQCt5D3fY8703LUy 3 | AN1zWVb/XBxw2wHOp0wX3WafZrTzk5Fxab8gm5C9EIzqINPtab/A+3RXj+KbVl1O 4 | Qk9yJr2j0ftenQLTEXLMRK+auM4nic8dzuobi1AWtZPsa8416Uc5HDsrJnPH08bd 5 | LQMGw4CdgAOU5Vy03Fcm+xpifoZeQo54aBuTTS65KiO0tvXNVN7qJI/EO4c2o9E1 6 | Ebv7geWSDAi2WPShQ7oKmhHL5lMiYg9H7lerADv+JKYmVDp4VfP8VqUWzCOFhULH 7 | 4Czglfl/bs1GtvQ+u+8v/+OrfxA0rkEx8gWW5QHDTBDZKTFmbB+yf/hdfflNPx3e 8 | WyYJ3lUZAgMBAAECggEBAJTnCBBdUB+fSs1prjeS/gsmnfgJoY+K9H7PCIxgj3yw 9 | FXAvZAmRDKzJGlF2EOOQlTG0YNiGDj6EAtv7rjoKcINyULSg8IU6wLmn61MrAuUa 10 | fa+Bujgh4E/B5swhOHAztNhzkzsM70Hi17wXSislh+HWd7qteOgqcbqgdOR4gaj+ 11 | HUqtcxG3H3hCL3dWugnjLZMtestLKGHSSZvbQNjYM3kKy2LvO8NpxmDE4a+TXygK 12 | qhaZjmS/dc/nJBJzOfkzby58RvGbzlJflfW/Uu3/gizj13GFQKWonq1xh630RAhv 13 | xX5ySok2aAx/+/SiJSpNXvM09grQuoORSr7D1tm+5rECgYEA3vf0hRfua0XAOu6f 14 | pyzNvLRRJ/pEew7XpNPCyS2TuMTd1yvXjGVxQfP46N6x1IM3SRU0zE+LSk80EF7l 15 | u1Or7GyCEhabYNe/7P2F8ENP73Do0HwvcI1jGrgr6r9oK0J27Xei+f6Q0bgJOPI2 16 | qaLj+V37cOjkNSM1mhTjtDwK8k0CgYEAx6cMrkjHl1+lDIIOc3qAEL3jb3xQveYk 17 | WrMF/B+j048k6boU4VvFJAIyQxOxMNxLjw3/9+zXCFJT4WaZK3TMXlg614ASGx3H 18 | tKjJM9O07ywwMq1gbutFS4nHCg3L3Os6esL0SPwMdATR3Yh22n5OGI9o+/aURulL 19 | GPEXef1Z2/0CgYEAgmwp5LxV4vu+8Pnp+4DSq4ISQr861XyeGTUhKEp3sUm+tgFY 20 | KTChakHKpHS3Mqa6bQ5xft08je/8dWL9IHFWDIqAHxKIOsKY6oh1k0/cbyPtmx45 21 | Ja4efV+jmMHzrfJH3KnxdCg7D+GFy4CrBtlYXuJhlO81pft9fC6h7yh8ArUCgYBq 22 | gvkl5Zftbs4rnRq+iqTVyagTKvwcQzIz3PwdZHfO/rfPpUFMdNv4eN99n3zRN0Vs 23 | HSjoiEazntA3GLgwUdBRqLpDi4SdSMbo337vkksdqbJQ5uPiaMuAIBG6kF+pDSkW 24 | ovkWErlGD+gySoI10FozihaVDRhPuFgjB0PiBcIxtQKBgGNSzX+Bx5+ux1Qny0Sn 25 | SUcBtepLnO8M8wafoGNyehbMnLzfuMbaDiJOdozGlBNHZTtPB3r4AYb8WnltdKW0 26 | 7i3fk26YZGiMVeUJvewA6/LOBEaqMdwoNwnoptvbR6ehHeE/PPtRtge2cD3bPIM7 27 | U9VlWgfgj9Dxfwhslqb9hmyp 28 | -----END PRIVATE KEY----- 29 | -------------------------------------------------------------------------------- /src/app.ux: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/images/.DS_Store: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vivoquickapp/apex-ui-sample/006acf11ceacc872e39b533b1572477619b1233b/src/images/.DS_Store -------------------------------------------------------------------------------- /src/images/loading.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vivoquickapp/apex-ui-sample/006acf11ceacc872e39b533b1572477619b1233b/src/images/loading.gif -------------------------------------------------------------------------------- /src/images/logo-d.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vivoquickapp/apex-ui-sample/006acf11ceacc872e39b533b1572477619b1233b/src/images/logo-d.png -------------------------------------------------------------------------------- /src/images/ufo.svg: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /src/manifest.json: -------------------------------------------------------------------------------- 1 | { 2 | "package": "com.apex.ui.quickapp", 3 | "name": "apex-ui", 4 | "versionName": "1.0.0", 5 | "versionCode": "1", 6 | "minPlatformVersion": "1050", 7 | "icon": "/images/logo-d.png", 8 | "features": [ 9 | { 10 | "name": "system.prompt" 11 | }, 12 | { 13 | "name": "system.router" 14 | }, 15 | { 16 | "name": "system.shortcut" 17 | }, 18 | { 19 | "name": "system.image" 20 | } 21 | ], 22 | "permissions": [ 23 | { 24 | "origin": "*" 25 | } 26 | ], 27 | "config": { 28 | "logLevel": "debug", 29 | "designWidth": 750 30 | }, 31 | "router": { 32 | "entry": "pages/home", 33 | "pages": { 34 | "pages/home": { 35 | "component": "index" 36 | }, 37 | "pages/color": { 38 | "component": "index" 39 | }, 40 | "pages/icon": { 41 | "component": "index" 42 | }, 43 | "pages/button": { 44 | "component": "index" 45 | }, 46 | "pages/input": { 47 | "component": "index" 48 | }, 49 | "pages/input-number": { 50 | "component": "index" 51 | }, 52 | "pages/radio": { 53 | "component": "index" 54 | }, 55 | "pages/checkbox": { 56 | "component": "index" 57 | }, 58 | "pages/navbar": { 59 | "component": "index" 60 | }, 61 | "pages/pagination": { 62 | "component": "index" 63 | }, 64 | "pages/segmented-control": { 65 | "component": "index" 66 | }, 67 | "pages/tabbar": { 68 | "component": "index" 69 | }, 70 | "pages/tabbar/page1": { 71 | "component": "index" 72 | }, 73 | "pages/tabbar/page2": { 74 | "component": "index" 75 | }, 76 | "pages/divider": { 77 | "component": "index" 78 | }, 79 | "pages/switch": { 80 | "component": "index" 81 | }, 82 | "pages/rating": { 83 | "component": "index" 84 | }, 85 | "pages/alert": { 86 | "component": "index" 87 | }, 88 | "pages/prompt": { 89 | "component": "index" 90 | }, 91 | "pages/avatar": { 92 | "component": "index" 93 | }, 94 | "pages/card": { 95 | "component": "index" 96 | }, 97 | "pages/message": { 98 | "component": "index" 99 | }, 100 | "pages/toast": { 101 | "component": "index" 102 | }, 103 | "pages/load-more": { 104 | "component": "index" 105 | }, 106 | "pages/badge": { 107 | "component": "index" 108 | }, 109 | "pages/barcode": { 110 | "component": "index" 111 | }, 112 | "pages/image": { 113 | "component": "index" 114 | }, 115 | "pages/spin": { 116 | "component": "index" 117 | }, 118 | "pages/circle": { 119 | "component": "index" 120 | }, 121 | "pages/accordion": { 122 | "component": "index" 123 | }, 124 | "pages/calendar": { 125 | "component": "index" 126 | }, 127 | "pages/popover": { 128 | "component": "index" 129 | }, 130 | "pages/search-bar": { 131 | "component": "index" 132 | }, 133 | "pages/dialog": { 134 | "component": "index" 135 | }, 136 | "pages/textarea": { 137 | "component": "index" 138 | }, 139 | "pages/media": { 140 | "component": "index" 141 | }, 142 | "pages/gallery": { 143 | "component": "index" 144 | }, 145 | "pages/qrcode": { 146 | "component": "index" 147 | }, 148 | "pages/steps": { 149 | "component": "index" 150 | }, 151 | "pages/vcode": { 152 | "component": "index" 153 | }, 154 | "pages/counter": { 155 | "component": "index" 156 | }, 157 | "pages/countdown": { 158 | "component": "index" 159 | }, 160 | "pages/keyboard": { 161 | "component": "index" 162 | }, 163 | "pages/result": { 164 | "component": "index" 165 | }, 166 | "pages/upload": { 167 | "component": "index" 168 | }, 169 | "pages/action-sheet": { 170 | "component": "index" 171 | }, 172 | "pages/sticky": { 173 | "component": "index" 174 | }, 175 | "pages/index": { 176 | "component": "index" 177 | }, 178 | "pages/fab-button": { 179 | "component": "index" 180 | }, 181 | "pages/popup": { 182 | "component": "index" 183 | }, 184 | "pages/filter-bar": { 185 | "component": "index" 186 | }, 187 | "pages/mask": { 188 | "component": "index" 189 | } 190 | } 191 | }, 192 | "display": { 193 | "titleBarBackgroundColor": "#f2f2f2", 194 | "titleBarTextColor": "#414141", 195 | "menu": true, 196 | "pages": { 197 | "pages/home": { 198 | "titleBarText": "apex组件示例", 199 | "menu": false 200 | }, 201 | "pages/color": { 202 | "titleBarText": "推荐色彩 color", 203 | "menu": false 204 | }, 205 | "pages/icon": { 206 | "titleBarText": "图标 icon", 207 | "menu": false 208 | }, 209 | "pages/button": { 210 | "titleBarText": "按钮 button", 211 | "menu": false 212 | }, 213 | "pages/navbar": { 214 | "titleBarText": "导航栏 navbar", 215 | "menu": false 216 | }, 217 | "pages/input": { 218 | "titleBarText": "文本输入框 input", 219 | "menu": false 220 | }, 221 | "pages/input-number": { 222 | "titleBarText": "数字输入框 input-number", 223 | "menu": false 224 | }, 225 | "pages/tabbar": { 226 | "titleBarText": "标签栏 tabbar", 227 | "menu": false 228 | }, 229 | "pages/tabbar/page1": { 230 | "titleBarText": "示例页面一", 231 | "menu": false 232 | }, 233 | "pages/tabbar/page2": { 234 | "titleBarText": "示例页面二", 235 | "menu": false 236 | }, 237 | "pages/divider": { 238 | "titleBarText": "分隔符 divider", 239 | "menu": false 240 | }, 241 | "pages/pagination": { 242 | "titleBarText": "分页器 pagination", 243 | "menu": false 244 | }, 245 | "pages/tag": { 246 | "titleBarText": "标签 tag", 247 | "menu": false 248 | }, 249 | "pages/segmented-control": { 250 | "titleBarText": "分段器 segmentedControl", 251 | "menu": false 252 | }, 253 | "pages/radio": { 254 | "titleBarText": "单选框 radio", 255 | "menu": false 256 | }, 257 | "pages/checkbox": { 258 | "titleBarText": "复选框 checkbox", 259 | "menu": false 260 | }, 261 | "pages/switch": { 262 | "titleBarText": "滑动按钮 switch", 263 | "menu": false 264 | }, 265 | "pages/rating": { 266 | "titleBarText": "评分 rating", 267 | "menu": false 268 | }, 269 | "pages/alert": { 270 | "titleBarText": "警告提示 alert", 271 | "menu": false 272 | }, 273 | "pages/prompt": { 274 | "titleBarText": "提示消息 prompt", 275 | "menu": false 276 | }, 277 | "pages/avatar": { 278 | "titleBarText": "头像 avatar", 279 | "menu": false 280 | }, 281 | "pages/card": { 282 | "titleBarText": "卡片 card", 283 | "menu": false 284 | }, 285 | "pages/message": { 286 | "titleBarText": "全局提示 message", 287 | "menu": false 288 | }, 289 | "pages/toast": { 290 | "titleBarText": "提示框 toast", 291 | "menu": false 292 | }, 293 | "pages/load-more": { 294 | "titleBarText": "底部提示 loadMore", 295 | "menu": false 296 | }, 297 | "pages/badge": { 298 | "titleBarText": "徽章 badge", 299 | "menu": false 300 | }, 301 | "pages/image": { 302 | "titleBarText": "图片 image", 303 | "menu": false 304 | }, 305 | "pages/spin": { 306 | "titleBarText": "加载中 spin", 307 | "menu": false 308 | }, 309 | "pages/circle": { 310 | "titleBarText": "进度环 circle", 311 | "menu": false 312 | }, 313 | "pages/textarea": { 314 | "titleBarText": "多行输入框 textarea", 315 | "menu": false 316 | }, 317 | "pages/gallery": { 318 | "titleBarText": "画廊 gallery", 319 | "menu": false 320 | }, 321 | "pages/accordion": { 322 | "titleBarText": "手风琴 accordion", 323 | "menu": false 324 | }, 325 | "pages/calendar": { 326 | "titleBarText": "日历 calendar", 327 | "menu": false 328 | }, 329 | "pages/popover": { 330 | "titleBarText": "气泡框 popover", 331 | "menu": false 332 | }, 333 | "pages/search-bar": { 334 | "titleBarText": "搜索栏 searchBar", 335 | "menu": false 336 | }, 337 | "pages/dialog": { 338 | "titleBarText": "对话框 dialog", 339 | "menu": false 340 | }, 341 | "pages/qrcode": { 342 | "titleBarText": "二维码 qrcode", 343 | "menu": false 344 | }, 345 | "pages/steps": { 346 | "titleBarText": "步骤 steps", 347 | "menu": false 348 | }, 349 | "pages/vcode": { 350 | "titleBarText": "验证码 vcode", 351 | "menu": false 352 | }, 353 | "pages/counter": { 354 | "titleBarText": "计数器 counter", 355 | "menu": false 356 | }, 357 | "pages/countdown": { 358 | "titleBarText": "倒计时 countdown", 359 | "menu": false 360 | }, 361 | "pages/keyboard": { 362 | "titleBarText": "数字键盘 keyboard", 363 | "menu": false 364 | }, 365 | "pages/result": { 366 | "titleBarText": "结果页 result", 367 | "menu": false 368 | }, 369 | "pages/upload": { 370 | "titleBarText": "上传 upload", 371 | "menu": false 372 | }, 373 | "pages/action-sheet": { 374 | "titleBarText": "上拉菜单 actionSheet", 375 | "menu": false 376 | }, 377 | "pages/sticky": { 378 | "titleBarText": "吸顶容器 sticky", 379 | "menu": false 380 | }, 381 | "pages/index": { 382 | "titleBarText": "索引选择器 index", 383 | "menu": false 384 | }, 385 | "pages/fab-button": { 386 | "titleBarText": "浮动按钮 fab-button", 387 | "menu": false 388 | }, 389 | "pages/popup": { 390 | "titleBarText": "弹出框 popup", 391 | "menu": false 392 | }, 393 | "pages/filter-bar": { 394 | "titleBarText": "筛选栏 filterBar", 395 | "menu": false 396 | }, 397 | "pages/mask": { 398 | "titleBarText": "背景幕 mask", 399 | "menu": false 400 | } 401 | } 402 | } 403 | } 404 | -------------------------------------------------------------------------------- /src/pages/accordion/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 33 | 34 | 41 | 42 | 47 | -------------------------------------------------------------------------------- /src/pages/action-sheet/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 12 | 18 | 66 | -------------------------------------------------------------------------------- /src/pages/alert/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 24 | 29 | 34 | -------------------------------------------------------------------------------- /src/pages/avatar/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 29 | 42 | 48 | -------------------------------------------------------------------------------- /src/pages/badge/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 41 | 42 | 62 | 63 | 69 | 70 | 71 | -------------------------------------------------------------------------------- /src/pages/barcode/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 14 | 28 | 41 | -------------------------------------------------------------------------------- /src/pages/button/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 36 | 46 | 56 | -------------------------------------------------------------------------------- /src/pages/calendar/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 49 | 50 | 132 | 133 | 172 | -------------------------------------------------------------------------------- /src/pages/card/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 32 | 58 | 131 | -------------------------------------------------------------------------------- /src/pages/checkbox/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 20 | 31 | 74 | -------------------------------------------------------------------------------- /src/pages/circle/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 45 | 46 | 77 | 78 | 96 | 97 | -------------------------------------------------------------------------------- /src/pages/color/index.ux: -------------------------------------------------------------------------------- 1 | 118 | 195 | 200 | -------------------------------------------------------------------------------- /src/pages/countdown/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 22 | 42 | 104 | -------------------------------------------------------------------------------- /src/pages/counter/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 14 | 29 | 73 | -------------------------------------------------------------------------------- /src/pages/dialog/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 19 | 20 | 134 | 135 | 151 | -------------------------------------------------------------------------------- /src/pages/divider/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 15 | 24 | 31 | -------------------------------------------------------------------------------- /src/pages/fab-button/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 13 | 14 | 77 | 78 | 80 | -------------------------------------------------------------------------------- /src/pages/filter-bar/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 7 | 8 | 239 | 240 | 242 | -------------------------------------------------------------------------------- /src/pages/gallery/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 26 | 27 | 64 | 65 | 89 | -------------------------------------------------------------------------------- /src/pages/home/index.ux: -------------------------------------------------------------------------------- 1 | 89 | 127 | 137 | -------------------------------------------------------------------------------- /src/pages/icon/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 12 | 29 | 40 | -------------------------------------------------------------------------------- /src/pages/image/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 48 | 80 | 86 | -------------------------------------------------------------------------------- /src/pages/index/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 15 | 16 | 39 | 40 | 50 | -------------------------------------------------------------------------------- /src/pages/input-number/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 18 | 30 | 53 | -------------------------------------------------------------------------------- /src/pages/input/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 17 | 28 | 43 | -------------------------------------------------------------------------------- /src/pages/keyboard/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 12 | 18 | 36 | -------------------------------------------------------------------------------- /src/pages/load-more/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 9 | 18 | 25 | -------------------------------------------------------------------------------- /src/pages/mask/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 12 | 23 | 36 | -------------------------------------------------------------------------------- /src/pages/media/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 17 | 27 | -------------------------------------------------------------------------------- /src/pages/message/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 14 | 20 | 57 | -------------------------------------------------------------------------------- /src/pages/navbar/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 19 | 28 | 48 | -------------------------------------------------------------------------------- /src/pages/pagination/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 28 | 40 | 60 | -------------------------------------------------------------------------------- /src/pages/popover/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 73 | 74 | 87 | 88 | 144 | -------------------------------------------------------------------------------- /src/pages/popup/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 45 | 51 | 76 | -------------------------------------------------------------------------------- /src/pages/prompt/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 9 | 10 | 27 | -------------------------------------------------------------------------------- /src/pages/qrcode/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 11 | 19 | 32 | -------------------------------------------------------------------------------- /src/pages/radio/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 16 | 27 | 69 | -------------------------------------------------------------------------------- /src/pages/rating/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 23 | 35 | 45 | -------------------------------------------------------------------------------- /src/pages/result/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 12 | 13 | 49 | -------------------------------------------------------------------------------- /src/pages/search-bar/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 12 | 13 | 18 | 19 | 28 | -------------------------------------------------------------------------------- /src/pages/segmented-control/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 23 | 32 | 51 | -------------------------------------------------------------------------------- /src/pages/select/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 31 | 32 | 72 | 73 | 99 | -------------------------------------------------------------------------------- /src/pages/spin/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 50 | 51 | 64 | 65 | 85 | -------------------------------------------------------------------------------- /src/pages/steps/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 34 | 35 | 48 | 49 | 63 | -------------------------------------------------------------------------------- /src/pages/sticky/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 130 | 131 | 136 | 137 | 153 | -------------------------------------------------------------------------------- /src/pages/switch/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 23 | 38 | 48 | -------------------------------------------------------------------------------- /src/pages/tabbar/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 8 | 10 | 41 | -------------------------------------------------------------------------------- /src/pages/tabbar/page1/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 8 | 10 | 41 | -------------------------------------------------------------------------------- /src/pages/tabbar/page2/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 8 | 10 | 41 | -------------------------------------------------------------------------------- /src/pages/tag/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 33 | 45 | 53 | -------------------------------------------------------------------------------- /src/pages/textarea/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 71 | 96 | 104 | -------------------------------------------------------------------------------- /src/pages/toast/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 18 | 24 | 83 | -------------------------------------------------------------------------------- /src/pages/upload/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 10 | 11 | 54 | -------------------------------------------------------------------------------- /src/pages/vcode/index.ux: -------------------------------------------------------------------------------- 1 | 2 | 3 | 18 | 32 | 39 | -------------------------------------------------------------------------------- /src/util.js: -------------------------------------------------------------------------------- 1 | /** 2 | * 显示菜单 3 | */ 4 | function showMenu () { 5 | const prompt = require('@system.prompt') 6 | const router = require('@system.router') 7 | const appInfo = require('@system.app').getInfo() 8 | prompt.showContextMenu({ 9 | itemList: ['保存桌面', '关于', '取消'], 10 | success: function (ret) { 11 | switch (ret.index) { 12 | case 0: 13 | // 保存桌面 14 | createShortcut() 15 | break 16 | case 1: 17 | // 关于 18 | router.push({ 19 | uri: '/About', 20 | params: { 21 | name: appInfo.name, 22 | icon: appInfo.icon 23 | } 24 | }) 25 | break 26 | case 2: 27 | // 取消 28 | break 29 | default: 30 | prompt.showToast({ 31 | message: 'error' 32 | }) 33 | } 34 | } 35 | }) 36 | } 37 | 38 | /** 39 | * 创建桌面图标 40 | * 注意:使用加载器测试`创建桌面快捷方式`功能时,请先在`系统设置`中打开`应用加载器`的`桌面快捷方式`权限 41 | */ 42 | function createShortcut () { 43 | const prompt = require('@system.prompt') 44 | const shortcut = require('@system.shortcut') 45 | shortcut.hasInstalled({ 46 | success: function (ret) { 47 | if (ret) { 48 | prompt.showToast({ 49 | message: '已创建桌面图标' 50 | }) 51 | } else { 52 | shortcut.install({ 53 | success: function () { 54 | prompt.showToast({ 55 | message: '成功创建桌面图标' 56 | }) 57 | }, 58 | fail: function (errmsg, errcode) { 59 | prompt.showToast({ 60 | message: `${errcode}: ${errmsg}` 61 | }) 62 | } 63 | }) 64 | } 65 | } 66 | }) 67 | } 68 | 69 | export default { 70 | showMenu, 71 | createShortcut 72 | } 73 | --------------------------------------------------------------------------------