Commit 7d6833f2c774220822ef403b9237fcbb434547aa
1 parent
c300654f9c
Exists in
master
地址列表
Showing
22 changed files
with
3472 additions
and
1377 deletions
Show diff stats
.eslintignore
.eslintrc.js
| ... | ... | @@ -0,0 +1,30 @@ |
| 1 | +module.exports = { | |
| 2 | + "env": { | |
| 3 | + "browser": true, | |
| 4 | + "es6": true | |
| 5 | + }, | |
| 6 | + "extends": [ | |
| 7 | + 'standard', | |
| 8 | + "eslint:recommended", | |
| 9 | + "plugin:vue/essential", | |
| 10 | + "plugin:@typescript-eslint/eslint-recommended", | |
| 11 | + ], | |
| 12 | + "globals": { | |
| 13 | + "Atomics": "readonly", | |
| 14 | + "SharedArrayBuffer": "readonly", | |
| 15 | + "uni": true, | |
| 16 | + "module": true | |
| 17 | + }, | |
| 18 | + "parserOptions": { | |
| 19 | + "ecmaVersion": 11, | |
| 20 | + "parser": "@typescript-eslint/parser", | |
| 21 | + "sourceType": "module" | |
| 22 | + }, | |
| 23 | + "plugins": [ | |
| 24 | + "vue", | |
| 25 | + "@typescript-eslint" | |
| 26 | + ], | |
| 27 | + "rules": { | |
| 28 | + quotes: ['error', 'single'], | |
| 29 | + } | |
| 30 | +}; | ... | ... |
package-lock.json
| ... | ... | @@ -1493,6 +1493,12 @@ |
| 1493 | 1493 | "integrity": "sha1-HBJhu+qhCoBVu8XYq4S3sq/IRqA=", |
| 1494 | 1494 | "dev": true |
| 1495 | 1495 | }, |
| 1496 | + "@types/eslint-visitor-keys": { | |
| 1497 | + "version": "1.0.0", | |
| 1498 | + "resolved": "https://registry.npm.taobao.org/@types/eslint-visitor-keys/download/@types/eslint-visitor-keys-1.0.0.tgz", | |
| 1499 | + "integrity": "sha1-HuMNeVRMqE1o1LPNsK9PIFZj3S0=", | |
| 1500 | + "dev": true | |
| 1501 | + }, | |
| 1496 | 1502 | "@types/events": { |
| 1497 | 1503 | "version": "3.0.0", |
| 1498 | 1504 | "resolved": "https://registry.npm.taobao.org/@types/events/download/@types/events-3.0.0.tgz?cache=0&sync_timestamp=1580843133282&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fevents%2Fdownload%2F%40types%2Fevents-3.0.0.tgz", |
| ... | ... | @@ -1518,6 +1524,12 @@ |
| 1518 | 1524 | "@types/node": "*" |
| 1519 | 1525 | } |
| 1520 | 1526 | }, |
| 1527 | + "@types/json-schema": { | |
| 1528 | + "version": "7.0.4", | |
| 1529 | + "resolved": "https://registry.npm.taobao.org/@types/json-schema/download/@types/json-schema-7.0.4.tgz?cache=0&sync_timestamp=1588200662880&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40types%2Fjson-schema%2Fdownload%2F%40types%2Fjson-schema-7.0.4.tgz", | |
| 1530 | + "integrity": "sha1-OP1z3f2bVaux4bLtV4y1W9e30zk=", | |
| 1531 | + "dev": true | |
| 1532 | + }, | |
| 1521 | 1533 | "@types/minimatch": { |
| 1522 | 1534 | "version": "3.0.3", |
| 1523 | 1535 | "resolved": "https://registry.npm.taobao.org/@types/minimatch/download/@types/minimatch-3.0.3.tgz", |
| ... | ... | @@ -1547,6 +1559,104 @@ |
| 1547 | 1559 | "integrity": "sha1-knmXNCu59KUYWobmV5oKGK/DOwo=", |
| 1548 | 1560 | "dev": true |
| 1549 | 1561 | }, |
| 1562 | + "@typescript-eslint/eslint-plugin": { | |
| 1563 | + "version": "3.0.0", | |
| 1564 | + "resolved": "https://registry.npm.taobao.org/@typescript-eslint/eslint-plugin/download/@typescript-eslint/eslint-plugin-3.0.0.tgz?cache=0&sync_timestamp=1590102419751&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40typescript-eslint%2Feslint-plugin%2Fdownload%2F%40typescript-eslint%2Feslint-plugin-3.0.0.tgz", | |
| 1565 | + "integrity": "sha1-Avjsa1zoFL2oDfwiRj8Qi+0faZs=", | |
| 1566 | + "dev": true, | |
| 1567 | + "requires": { | |
| 1568 | + "@typescript-eslint/experimental-utils": "3.0.0", | |
| 1569 | + "functional-red-black-tree": "^1.0.1", | |
| 1570 | + "regexpp": "^3.0.0", | |
| 1571 | + "semver": "^7.3.2", | |
| 1572 | + "tsutils": "^3.17.1" | |
| 1573 | + }, | |
| 1574 | + "dependencies": { | |
| 1575 | + "semver": { | |
| 1576 | + "version": "7.3.2", | |
| 1577 | + "resolved": "https://registry.npm.taobao.org/semver/download/semver-7.3.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-7.3.2.tgz", | |
| 1578 | + "integrity": "sha1-YElisFK4HtB4aq6EOJ/7pw/9OTg=", | |
| 1579 | + "dev": true | |
| 1580 | + }, | |
| 1581 | + "tsutils": { | |
| 1582 | + "version": "3.17.1", | |
| 1583 | + "resolved": "https://registry.npm.taobao.org/tsutils/download/tsutils-3.17.1.tgz", | |
| 1584 | + "integrity": "sha1-7XGZF/EcoN7lhicrKsSeAVot11k=", | |
| 1585 | + "dev": true, | |
| 1586 | + "requires": { | |
| 1587 | + "tslib": "^1.8.1" | |
| 1588 | + } | |
| 1589 | + } | |
| 1590 | + } | |
| 1591 | + }, | |
| 1592 | + "@typescript-eslint/experimental-utils": { | |
| 1593 | + "version": "3.0.0", | |
| 1594 | + "resolved": "https://registry.npm.taobao.org/@typescript-eslint/experimental-utils/download/@typescript-eslint/experimental-utils-3.0.0.tgz?cache=0&sync_timestamp=1590102416205&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40typescript-eslint%2Fexperimental-utils%2Fdownload%2F%40typescript-eslint%2Fexperimental-utils-3.0.0.tgz", | |
| 1595 | + "integrity": "sha1-Hd9T7rYayOqpp3BycieQrE9kHAM=", | |
| 1596 | + "dev": true, | |
| 1597 | + "requires": { | |
| 1598 | + "@types/json-schema": "^7.0.3", | |
| 1599 | + "@typescript-eslint/typescript-estree": "3.0.0", | |
| 1600 | + "eslint-scope": "^5.0.0", | |
| 1601 | + "eslint-utils": "^2.0.0" | |
| 1602 | + }, | |
| 1603 | + "dependencies": { | |
| 1604 | + "eslint-scope": { | |
| 1605 | + "version": "5.0.0", | |
| 1606 | + "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-5.0.0.tgz", | |
| 1607 | + "integrity": "sha1-6HyIh8c+jR7ITxylkWRcNYv8j7k=", | |
| 1608 | + "dev": true, | |
| 1609 | + "requires": { | |
| 1610 | + "esrecurse": "^4.1.0", | |
| 1611 | + "estraverse": "^4.1.1" | |
| 1612 | + } | |
| 1613 | + } | |
| 1614 | + } | |
| 1615 | + }, | |
| 1616 | + "@typescript-eslint/parser": { | |
| 1617 | + "version": "3.0.0", | |
| 1618 | + "resolved": "https://registry.npm.taobao.org/@typescript-eslint/parser/download/@typescript-eslint/parser-3.0.0.tgz?cache=0&sync_timestamp=1590102418147&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2F%40typescript-eslint%2Fparser%2Fdownload%2F%40typescript-eslint%2Fparser-3.0.0.tgz", | |
| 1619 | + "integrity": "sha1-/p/fGKEVXALAQiDBRQajIMtsaUQ=", | |
| 1620 | + "dev": true, | |
| 1621 | + "requires": { | |
| 1622 | + "@types/eslint-visitor-keys": "^1.0.0", | |
| 1623 | + "@typescript-eslint/experimental-utils": "3.0.0", | |
| 1624 | + "@typescript-eslint/typescript-estree": "3.0.0", | |
| 1625 | + "eslint-visitor-keys": "^1.1.0" | |
| 1626 | + } | |
| 1627 | + }, | |
| 1628 | + "@typescript-eslint/typescript-estree": { | |
| 1629 | + "version": "3.0.0", | |
| 1630 | + "resolved": "https://registry.npm.taobao.org/@typescript-eslint/typescript-estree/download/@typescript-eslint/typescript-estree-3.0.0.tgz", | |
| 1631 | + "integrity": "sha1-+kDht2zP+IATC+BU2cOY6WAEv0I=", | |
| 1632 | + "dev": true, | |
| 1633 | + "requires": { | |
| 1634 | + "debug": "^4.1.1", | |
| 1635 | + "eslint-visitor-keys": "^1.1.0", | |
| 1636 | + "glob": "^7.1.6", | |
| 1637 | + "is-glob": "^4.0.1", | |
| 1638 | + "lodash": "^4.17.15", | |
| 1639 | + "semver": "^7.3.2", | |
| 1640 | + "tsutils": "^3.17.1" | |
| 1641 | + }, | |
| 1642 | + "dependencies": { | |
| 1643 | + "semver": { | |
| 1644 | + "version": "7.3.2", | |
| 1645 | + "resolved": "https://registry.npm.taobao.org/semver/download/semver-7.3.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-7.3.2.tgz", | |
| 1646 | + "integrity": "sha1-YElisFK4HtB4aq6EOJ/7pw/9OTg=", | |
| 1647 | + "dev": true | |
| 1648 | + }, | |
| 1649 | + "tsutils": { | |
| 1650 | + "version": "3.17.1", | |
| 1651 | + "resolved": "https://registry.npm.taobao.org/tsutils/download/tsutils-3.17.1.tgz", | |
| 1652 | + "integrity": "sha1-7XGZF/EcoN7lhicrKsSeAVot11k=", | |
| 1653 | + "dev": true, | |
| 1654 | + "requires": { | |
| 1655 | + "tslib": "^1.8.1" | |
| 1656 | + } | |
| 1657 | + } | |
| 1658 | + } | |
| 1659 | + }, | |
| 1550 | 1660 | "@vue/babel-helper-vue-jsx-merge-props": { |
| 1551 | 1661 | "version": "1.0.0", |
| 1552 | 1662 | "resolved": "https://registry.npm.taobao.org/@vue/babel-helper-vue-jsx-merge-props/download/@vue/babel-helper-vue-jsx-merge-props-1.0.0.tgz", |
| ... | ... | @@ -2047,6 +2157,12 @@ |
| 2047 | 2157 | "indexes-of": "^1.0.1", |
| 2048 | 2158 | "uniq": "^1.0.1" |
| 2049 | 2159 | } |
| 2160 | + }, | |
| 2161 | + "prettier": { | |
| 2162 | + "version": "1.19.1", | |
| 2163 | + "resolved": "https://registry.npm.taobao.org/prettier/download/prettier-1.19.1.tgz", | |
| 2164 | + "integrity": "sha1-99f1/4qc2HKnvkyhQglZVqYHl8s=", | |
| 2165 | + "optional": true | |
| 2050 | 2166 | } |
| 2051 | 2167 | } |
| 2052 | 2168 | }, |
| ... | ... | @@ -2258,6 +2374,12 @@ |
| 2258 | 2374 | "integrity": "sha1-Po2KmUfQWZoXltECJddDL0pKz14=", |
| 2259 | 2375 | "dev": true |
| 2260 | 2376 | }, |
| 2377 | + "acorn-jsx": { | |
| 2378 | + "version": "5.2.0", | |
| 2379 | + "resolved": "https://registry.npm.taobao.org/acorn-jsx/download/acorn-jsx-5.2.0.tgz", | |
| 2380 | + "integrity": "sha1-TGYGkXPW/daO2FI5/CViJhgrLr4=", | |
| 2381 | + "dev": true | |
| 2382 | + }, | |
| 2261 | 2383 | "acorn-walk": { |
| 2262 | 2384 | "version": "7.1.1", |
| 2263 | 2385 | "resolved": "https://registry.npm.taobao.org/acorn-walk/download/acorn-walk-7.1.1.tgz", |
| ... | ... | @@ -2348,6 +2470,23 @@ |
| 2348 | 2470 | "integrity": "sha1-46PaS/uubIapwoViXeEkojQCb78=", |
| 2349 | 2471 | "dev": true |
| 2350 | 2472 | }, |
| 2473 | + "ansi-escapes": { | |
| 2474 | + "version": "4.3.1", | |
| 2475 | + "resolved": "https://registry.npm.taobao.org/ansi-escapes/download/ansi-escapes-4.3.1.tgz?cache=0&sync_timestamp=1583072845985&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-escapes%2Fdownload%2Fansi-escapes-4.3.1.tgz", | |
| 2476 | + "integrity": "sha1-pcR8xDGB8fOP/XB2g3cA05VSKmE=", | |
| 2477 | + "dev": true, | |
| 2478 | + "requires": { | |
| 2479 | + "type-fest": "^0.11.0" | |
| 2480 | + }, | |
| 2481 | + "dependencies": { | |
| 2482 | + "type-fest": { | |
| 2483 | + "version": "0.11.0", | |
| 2484 | + "resolved": "https://registry.npm.taobao.org/type-fest/download/type-fest-0.11.0.tgz", | |
| 2485 | + "integrity": "sha1-l6vwhyMQ/tiKXEZrJWgVdhReM/E=", | |
| 2486 | + "dev": true | |
| 2487 | + } | |
| 2488 | + } | |
| 2489 | + }, | |
| 2351 | 2490 | "ansi-html": { |
| 2352 | 2491 | "version": "0.0.7", |
| 2353 | 2492 | "resolved": "http://registry.npm.taobao.org/ansi-html/download/ansi-html-0.0.7.tgz", |
| ... | ... | @@ -2449,6 +2588,17 @@ |
| 2449 | 2588 | "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=", |
| 2450 | 2589 | "dev": true |
| 2451 | 2590 | }, |
| 2591 | + "array-includes": { | |
| 2592 | + "version": "3.1.1", | |
| 2593 | + "resolved": "https://registry.npm.taobao.org/array-includes/download/array-includes-3.1.1.tgz", | |
| 2594 | + "integrity": "sha1-zdZ+aFK9+cEhVGB4ZzIlXtJFk0g=", | |
| 2595 | + "dev": true, | |
| 2596 | + "requires": { | |
| 2597 | + "define-properties": "^1.1.3", | |
| 2598 | + "es-abstract": "^1.17.0", | |
| 2599 | + "is-string": "^1.0.5" | |
| 2600 | + } | |
| 2601 | + }, | |
| 2452 | 2602 | "array-union": { |
| 2453 | 2603 | "version": "1.0.2", |
| 2454 | 2604 | "resolved": "https://registry.npm.taobao.org/array-union/download/array-union-1.0.2.tgz", |
| ... | ... | @@ -2469,6 +2619,16 @@ |
| 2469 | 2619 | "resolved": "http://registry.npm.taobao.org/array-unique/download/array-unique-0.3.2.tgz", |
| 2470 | 2620 | "integrity": "sha1-qJS3XUvE9s1nnvMkSp/Y9Gri1Cg=" |
| 2471 | 2621 | }, |
| 2622 | + "array.prototype.flat": { | |
| 2623 | + "version": "1.2.3", | |
| 2624 | + "resolved": "https://registry.npm.taobao.org/array.prototype.flat/download/array.prototype.flat-1.2.3.tgz?cache=0&sync_timestamp=1576170698154&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Farray.prototype.flat%2Fdownload%2Farray.prototype.flat-1.2.3.tgz", | |
| 2625 | + "integrity": "sha1-DegrQmsDGNv9uUAInjiwQ9N/bHs=", | |
| 2626 | + "dev": true, | |
| 2627 | + "requires": { | |
| 2628 | + "define-properties": "^1.1.3", | |
| 2629 | + "es-abstract": "^1.17.0-next.1" | |
| 2630 | + } | |
| 2631 | + }, | |
| 2472 | 2632 | "arraybuffer.slice": { |
| 2473 | 2633 | "version": "0.0.7", |
| 2474 | 2634 | "resolved": "https://registry.npm.taobao.org/arraybuffer.slice/download/arraybuffer.slice-0.0.7.tgz", |
| ... | ... | @@ -2526,6 +2686,12 @@ |
| 2526 | 2686 | "resolved": "http://registry.npm.taobao.org/assign-symbols/download/assign-symbols-1.0.0.tgz", |
| 2527 | 2687 | "integrity": "sha1-WWZ/QfrdTyDMvCu5a41Pf3jsA2c=" |
| 2528 | 2688 | }, |
| 2689 | + "astral-regex": { | |
| 2690 | + "version": "1.0.0", | |
| 2691 | + "resolved": "https://registry.npm.taobao.org/astral-regex/download/astral-regex-1.0.0.tgz", | |
| 2692 | + "integrity": "sha1-bIw/uCfdQ+45GPJ7gngqt2WKb9k=", | |
| 2693 | + "dev": true | |
| 2694 | + }, | |
| 2529 | 2695 | "async": { |
| 2530 | 2696 | "version": "2.6.3", |
| 2531 | 2697 | "resolved": "https://registry.npm.taobao.org/async/download/async-2.6.3.tgz", |
| ... | ... | @@ -3360,6 +3526,12 @@ |
| 3360 | 3526 | } |
| 3361 | 3527 | } |
| 3362 | 3528 | }, |
| 3529 | + "chardet": { | |
| 3530 | + "version": "0.7.0", | |
| 3531 | + "resolved": "https://registry.npm.taobao.org/chardet/download/chardet-0.7.0.tgz?cache=0&sync_timestamp=1588894059283&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchardet%2Fdownload%2Fchardet-0.7.0.tgz", | |
| 3532 | + "integrity": "sha1-kAlISfCTfy7twkJdDSip5fDLrZ4=", | |
| 3533 | + "dev": true | |
| 3534 | + }, | |
| 3363 | 3535 | "charenc": { |
| 3364 | 3536 | "version": "0.0.2", |
| 3365 | 3537 | "resolved": "http://registry.npm.taobao.org/charenc/download/charenc-0.0.2.tgz", |
| ... | ... | @@ -3540,6 +3712,12 @@ |
| 3540 | 3712 | "integrity": "sha1-BjIjmktapMlYYQFCw0u3plH8jfU=", |
| 3541 | 3713 | "dev": true |
| 3542 | 3714 | }, |
| 3715 | + "cli-width": { | |
| 3716 | + "version": "2.2.1", | |
| 3717 | + "resolved": "https://registry.npm.taobao.org/cli-width/download/cli-width-2.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcli-width%2Fdownload%2Fcli-width-2.2.1.tgz", | |
| 3718 | + "integrity": "sha1-sEM9C06chH7xiGik7xb9X8gnHEg=", | |
| 3719 | + "dev": true | |
| 3720 | + }, | |
| 3543 | 3721 | "clipboardy": { |
| 3544 | 3722 | "version": "2.3.0", |
| 3545 | 3723 | "resolved": "https://registry.npm.taobao.org/clipboardy/download/clipboardy-2.3.0.tgz", |
| ... | ... | @@ -3807,6 +3985,12 @@ |
| 3807 | 3985 | "resolved": "http://registry.npm.taobao.org/constants-browserify/download/constants-browserify-1.0.0.tgz", |
| 3808 | 3986 | "integrity": "sha1-wguW2MYXdIqvHBYCF2DNJ/y4y3U=" |
| 3809 | 3987 | }, |
| 3988 | + "contains-path": { | |
| 3989 | + "version": "0.1.0", | |
| 3990 | + "resolved": "https://registry.npm.taobao.org/contains-path/download/contains-path-0.1.0.tgz", | |
| 3991 | + "integrity": "sha1-/ozxhP9mcLa67wGp1IYaXL7EEgo=", | |
| 3992 | + "dev": true | |
| 3993 | + }, | |
| 3810 | 3994 | "content-disposition": { |
| 3811 | 3995 | "version": "0.5.3", |
| 3812 | 3996 | "resolved": "http://registry.npm.taobao.org/content-disposition/download/content-disposition-0.5.3.tgz", |
| ... | ... | @@ -4668,6 +4852,16 @@ |
| 4668 | 4852 | "buffer-indexof": "^1.0.0" |
| 4669 | 4853 | } |
| 4670 | 4854 | }, |
| 4855 | + "doctrine": { | |
| 4856 | + "version": "1.5.0", | |
| 4857 | + "resolved": "https://registry.npm.taobao.org/doctrine/download/doctrine-1.5.0.tgz", | |
| 4858 | + "integrity": "sha1-N53Ocw9hZvds76TmcHoVmwLFpvo=", | |
| 4859 | + "dev": true, | |
| 4860 | + "requires": { | |
| 4861 | + "esutils": "^2.0.2", | |
| 4862 | + "isarray": "^1.0.0" | |
| 4863 | + } | |
| 4864 | + }, | |
| 4671 | 4865 | "dom-converter": { |
| 4672 | 4866 | "version": "0.2.0", |
| 4673 | 4867 | "resolved": "http://registry.npm.taobao.org/dom-converter/download/dom-converter-0.2.0.tgz", |
| ... | ... | @@ -5025,6 +5219,618 @@ |
| 5025 | 5219 | "source-map": "~0.6.1" |
| 5026 | 5220 | } |
| 5027 | 5221 | }, |
| 5222 | + "eslint": { | |
| 5223 | + "version": "7.0.0", | |
| 5224 | + "resolved": "https://registry.npm.taobao.org/eslint/download/eslint-7.0.0.tgz?cache=0&sync_timestamp=1589251748946&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint%2Fdownload%2Feslint-7.0.0.tgz", | |
| 5225 | + "integrity": "sha1-w139BKQ3IRC9eMaajXmGQnORmgg=", | |
| 5226 | + "dev": true, | |
| 5227 | + "requires": { | |
| 5228 | + "@babel/code-frame": "^7.0.0", | |
| 5229 | + "ajv": "^6.10.0", | |
| 5230 | + "chalk": "^4.0.0", | |
| 5231 | + "cross-spawn": "^7.0.2", | |
| 5232 | + "debug": "^4.0.1", | |
| 5233 | + "doctrine": "^3.0.0", | |
| 5234 | + "eslint-scope": "^5.0.0", | |
| 5235 | + "eslint-utils": "^2.0.0", | |
| 5236 | + "eslint-visitor-keys": "^1.1.0", | |
| 5237 | + "espree": "^7.0.0", | |
| 5238 | + "esquery": "^1.2.0", | |
| 5239 | + "esutils": "^2.0.2", | |
| 5240 | + "file-entry-cache": "^5.0.1", | |
| 5241 | + "functional-red-black-tree": "^1.0.1", | |
| 5242 | + "glob-parent": "^5.0.0", | |
| 5243 | + "globals": "^12.1.0", | |
| 5244 | + "ignore": "^4.0.6", | |
| 5245 | + "import-fresh": "^3.0.0", | |
| 5246 | + "imurmurhash": "^0.1.4", | |
| 5247 | + "inquirer": "^7.0.0", | |
| 5248 | + "is-glob": "^4.0.0", | |
| 5249 | + "js-yaml": "^3.13.1", | |
| 5250 | + "json-stable-stringify-without-jsonify": "^1.0.1", | |
| 5251 | + "levn": "^0.4.1", | |
| 5252 | + "lodash": "^4.17.14", | |
| 5253 | + "minimatch": "^3.0.4", | |
| 5254 | + "natural-compare": "^1.4.0", | |
| 5255 | + "optionator": "^0.9.1", | |
| 5256 | + "progress": "^2.0.0", | |
| 5257 | + "regexpp": "^3.1.0", | |
| 5258 | + "semver": "^7.2.1", | |
| 5259 | + "strip-ansi": "^6.0.0", | |
| 5260 | + "strip-json-comments": "^3.1.0", | |
| 5261 | + "table": "^5.2.3", | |
| 5262 | + "text-table": "^0.2.0", | |
| 5263 | + "v8-compile-cache": "^2.0.3" | |
| 5264 | + }, | |
| 5265 | + "dependencies": { | |
| 5266 | + "acorn": { | |
| 5267 | + "version": "7.2.0", | |
| 5268 | + "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-7.2.0.tgz?cache=0&sync_timestamp=1589008014473&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn%2Fdownload%2Facorn-7.2.0.tgz", | |
| 5269 | + "integrity": "sha1-F+p+QNfIZA/1SmlMiJwm8xcE7/4=", | |
| 5270 | + "dev": true | |
| 5271 | + }, | |
| 5272 | + "ansi-styles": { | |
| 5273 | + "version": "4.2.1", | |
| 5274 | + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-4.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-4.2.1.tgz", | |
| 5275 | + "integrity": "sha1-kK51xCTQCNJiTFvynq0xd+v881k=", | |
| 5276 | + "dev": true, | |
| 5277 | + "requires": { | |
| 5278 | + "@types/color-name": "^1.1.1", | |
| 5279 | + "color-convert": "^2.0.1" | |
| 5280 | + } | |
| 5281 | + }, | |
| 5282 | + "chalk": { | |
| 5283 | + "version": "4.0.0", | |
| 5284 | + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-4.0.0.tgz?cache=0&sync_timestamp=1585815759944&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-4.0.0.tgz", | |
| 5285 | + "integrity": "sha1-bpgIHtLRf6q2FetSrGbsH+YgnnI=", | |
| 5286 | + "dev": true, | |
| 5287 | + "requires": { | |
| 5288 | + "ansi-styles": "^4.1.0", | |
| 5289 | + "supports-color": "^7.1.0" | |
| 5290 | + } | |
| 5291 | + }, | |
| 5292 | + "color-convert": { | |
| 5293 | + "version": "2.0.1", | |
| 5294 | + "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz", | |
| 5295 | + "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=", | |
| 5296 | + "dev": true, | |
| 5297 | + "requires": { | |
| 5298 | + "color-name": "~1.1.4" | |
| 5299 | + } | |
| 5300 | + }, | |
| 5301 | + "color-name": { | |
| 5302 | + "version": "1.1.4", | |
| 5303 | + "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz", | |
| 5304 | + "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=", | |
| 5305 | + "dev": true | |
| 5306 | + }, | |
| 5307 | + "cross-spawn": { | |
| 5308 | + "version": "7.0.2", | |
| 5309 | + "resolved": "https://registry.npm.taobao.org/cross-spawn/download/cross-spawn-7.0.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fcross-spawn%2Fdownload%2Fcross-spawn-7.0.2.tgz", | |
| 5310 | + "integrity": "sha1-0Nfc+nTokRXHYZ9PchqU4f23FtY=", | |
| 5311 | + "dev": true, | |
| 5312 | + "requires": { | |
| 5313 | + "path-key": "^3.1.0", | |
| 5314 | + "shebang-command": "^2.0.0", | |
| 5315 | + "which": "^2.0.1" | |
| 5316 | + } | |
| 5317 | + }, | |
| 5318 | + "doctrine": { | |
| 5319 | + "version": "3.0.0", | |
| 5320 | + "resolved": "https://registry.npm.taobao.org/doctrine/download/doctrine-3.0.0.tgz", | |
| 5321 | + "integrity": "sha1-rd6+rXKmV023g2OdyHoSF3OXOWE=", | |
| 5322 | + "dev": true, | |
| 5323 | + "requires": { | |
| 5324 | + "esutils": "^2.0.2" | |
| 5325 | + } | |
| 5326 | + }, | |
| 5327 | + "eslint-scope": { | |
| 5328 | + "version": "5.0.0", | |
| 5329 | + "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-5.0.0.tgz", | |
| 5330 | + "integrity": "sha1-6HyIh8c+jR7ITxylkWRcNYv8j7k=", | |
| 5331 | + "dev": true, | |
| 5332 | + "requires": { | |
| 5333 | + "esrecurse": "^4.1.0", | |
| 5334 | + "estraverse": "^4.1.1" | |
| 5335 | + } | |
| 5336 | + }, | |
| 5337 | + "espree": { | |
| 5338 | + "version": "7.0.0", | |
| 5339 | + "resolved": "https://registry.npm.taobao.org/espree/download/espree-7.0.0.tgz?cache=0&sync_timestamp=1588886720119&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fespree%2Fdownload%2Fespree-7.0.0.tgz", | |
| 5340 | + "integrity": "sha1-inpg8hjmnxIKhC3CTFqIqndIp04=", | |
| 5341 | + "dev": true, | |
| 5342 | + "requires": { | |
| 5343 | + "acorn": "^7.1.1", | |
| 5344 | + "acorn-jsx": "^5.2.0", | |
| 5345 | + "eslint-visitor-keys": "^1.1.0" | |
| 5346 | + } | |
| 5347 | + }, | |
| 5348 | + "glob-parent": { | |
| 5349 | + "version": "5.1.1", | |
| 5350 | + "resolved": "https://registry.npm.taobao.org/glob-parent/download/glob-parent-5.1.1.tgz?cache=0&sync_timestamp=1584835847541&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglob-parent%2Fdownload%2Fglob-parent-5.1.1.tgz", | |
| 5351 | + "integrity": "sha1-tsHvQXxOVmPqSY8cRa+saRa7wik=", | |
| 5352 | + "dev": true, | |
| 5353 | + "requires": { | |
| 5354 | + "is-glob": "^4.0.1" | |
| 5355 | + } | |
| 5356 | + }, | |
| 5357 | + "globals": { | |
| 5358 | + "version": "12.4.0", | |
| 5359 | + "resolved": "https://registry.npm.taobao.org/globals/download/globals-12.4.0.tgz?cache=0&sync_timestamp=1586675819799&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fglobals%2Fdownload%2Fglobals-12.4.0.tgz", | |
| 5360 | + "integrity": "sha1-oYgTV2pBsAokqX5/gVkYwuGZJfg=", | |
| 5361 | + "dev": true, | |
| 5362 | + "requires": { | |
| 5363 | + "type-fest": "^0.8.1" | |
| 5364 | + } | |
| 5365 | + }, | |
| 5366 | + "has-flag": { | |
| 5367 | + "version": "4.0.0", | |
| 5368 | + "resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz", | |
| 5369 | + "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=", | |
| 5370 | + "dev": true | |
| 5371 | + }, | |
| 5372 | + "ignore": { | |
| 5373 | + "version": "4.0.6", | |
| 5374 | + "resolved": "https://registry.npm.taobao.org/ignore/download/ignore-4.0.6.tgz", | |
| 5375 | + "integrity": "sha1-dQ49tYYgh7RzfrrIIH/9HvJ7Jfw=", | |
| 5376 | + "dev": true | |
| 5377 | + }, | |
| 5378 | + "import-fresh": { | |
| 5379 | + "version": "3.2.1", | |
| 5380 | + "resolved": "https://registry.npm.taobao.org/import-fresh/download/import-fresh-3.2.1.tgz", | |
| 5381 | + "integrity": "sha1-Yz/2GFBueTr1rJG/SLcmd+FcvmY=", | |
| 5382 | + "dev": true, | |
| 5383 | + "requires": { | |
| 5384 | + "parent-module": "^1.0.0", | |
| 5385 | + "resolve-from": "^4.0.0" | |
| 5386 | + } | |
| 5387 | + }, | |
| 5388 | + "levn": { | |
| 5389 | + "version": "0.4.1", | |
| 5390 | + "resolved": "https://registry.npm.taobao.org/levn/download/levn-0.4.1.tgz", | |
| 5391 | + "integrity": "sha1-rkViwAdHO5MqYgDUAyaN0v/8at4=", | |
| 5392 | + "dev": true, | |
| 5393 | + "requires": { | |
| 5394 | + "prelude-ls": "^1.2.1", | |
| 5395 | + "type-check": "~0.4.0" | |
| 5396 | + } | |
| 5397 | + }, | |
| 5398 | + "optionator": { | |
| 5399 | + "version": "0.9.1", | |
| 5400 | + "resolved": "https://registry.npm.taobao.org/optionator/download/optionator-0.9.1.tgz", | |
| 5401 | + "integrity": "sha1-TyNqY3Pa4FZqbUPhMmZ09QwpFJk=", | |
| 5402 | + "dev": true, | |
| 5403 | + "requires": { | |
| 5404 | + "deep-is": "^0.1.3", | |
| 5405 | + "fast-levenshtein": "^2.0.6", | |
| 5406 | + "levn": "^0.4.1", | |
| 5407 | + "prelude-ls": "^1.2.1", | |
| 5408 | + "type-check": "^0.4.0", | |
| 5409 | + "word-wrap": "^1.2.3" | |
| 5410 | + } | |
| 5411 | + }, | |
| 5412 | + "path-key": { | |
| 5413 | + "version": "3.1.1", | |
| 5414 | + "resolved": "https://registry.npm.taobao.org/path-key/download/path-key-3.1.1.tgz", | |
| 5415 | + "integrity": "sha1-WB9q3mWMu6ZaDTOA3ndTKVBU83U=", | |
| 5416 | + "dev": true | |
| 5417 | + }, | |
| 5418 | + "prelude-ls": { | |
| 5419 | + "version": "1.2.1", | |
| 5420 | + "resolved": "https://registry.npm.taobao.org/prelude-ls/download/prelude-ls-1.2.1.tgz", | |
| 5421 | + "integrity": "sha1-3rxkidem5rDnYRiIzsiAM30xY5Y=", | |
| 5422 | + "dev": true | |
| 5423 | + }, | |
| 5424 | + "resolve-from": { | |
| 5425 | + "version": "4.0.0", | |
| 5426 | + "resolved": "https://registry.npm.taobao.org/resolve-from/download/resolve-from-4.0.0.tgz", | |
| 5427 | + "integrity": "sha1-SrzYUq0y3Xuqv+m0DgCjbbXzkuY=", | |
| 5428 | + "dev": true | |
| 5429 | + }, | |
| 5430 | + "semver": { | |
| 5431 | + "version": "7.3.2", | |
| 5432 | + "resolved": "https://registry.npm.taobao.org/semver/download/semver-7.3.2.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-7.3.2.tgz", | |
| 5433 | + "integrity": "sha1-YElisFK4HtB4aq6EOJ/7pw/9OTg=", | |
| 5434 | + "dev": true | |
| 5435 | + }, | |
| 5436 | + "shebang-command": { | |
| 5437 | + "version": "2.0.0", | |
| 5438 | + "resolved": "https://registry.npm.taobao.org/shebang-command/download/shebang-command-2.0.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fshebang-command%2Fdownload%2Fshebang-command-2.0.0.tgz", | |
| 5439 | + "integrity": "sha1-zNCvT4g1+9wmW4JGGq8MNmY/NOo=", | |
| 5440 | + "dev": true, | |
| 5441 | + "requires": { | |
| 5442 | + "shebang-regex": "^3.0.0" | |
| 5443 | + } | |
| 5444 | + }, | |
| 5445 | + "shebang-regex": { | |
| 5446 | + "version": "3.0.0", | |
| 5447 | + "resolved": "https://registry.npm.taobao.org/shebang-regex/download/shebang-regex-3.0.0.tgz", | |
| 5448 | + "integrity": "sha1-rhbxZE2HPsrYQ7AwexQzYtTEIXI=", | |
| 5449 | + "dev": true | |
| 5450 | + }, | |
| 5451 | + "strip-json-comments": { | |
| 5452 | + "version": "3.1.0", | |
| 5453 | + "resolved": "https://registry.npm.taobao.org/strip-json-comments/download/strip-json-comments-3.1.0.tgz?cache=0&sync_timestamp=1586160317146&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstrip-json-comments%2Fdownload%2Fstrip-json-comments-3.1.0.tgz", | |
| 5454 | + "integrity": "sha1-djjTFCISns9EV0QACfugP5+awYA=", | |
| 5455 | + "dev": true | |
| 5456 | + }, | |
| 5457 | + "supports-color": { | |
| 5458 | + "version": "7.1.0", | |
| 5459 | + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-7.1.0.tgz?cache=0&sync_timestamp=1569557271992&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-7.1.0.tgz", | |
| 5460 | + "integrity": "sha1-aOMlkd9z4lrRxLSRCKLsUHliv9E=", | |
| 5461 | + "dev": true, | |
| 5462 | + "requires": { | |
| 5463 | + "has-flag": "^4.0.0" | |
| 5464 | + } | |
| 5465 | + }, | |
| 5466 | + "type-check": { | |
| 5467 | + "version": "0.4.0", | |
| 5468 | + "resolved": "https://registry.npm.taobao.org/type-check/download/type-check-0.4.0.tgz", | |
| 5469 | + "integrity": "sha1-B7ggO/pwVsBlcFDjzNLDdzC6uPE=", | |
| 5470 | + "dev": true, | |
| 5471 | + "requires": { | |
| 5472 | + "prelude-ls": "^1.2.1" | |
| 5473 | + } | |
| 5474 | + }, | |
| 5475 | + "type-fest": { | |
| 5476 | + "version": "0.8.1", | |
| 5477 | + "resolved": "https://registry.npm.taobao.org/type-fest/download/type-fest-0.8.1.tgz", | |
| 5478 | + "integrity": "sha1-CeJJ696FHTseSNJ8EFREZn8XuD0=", | |
| 5479 | + "dev": true | |
| 5480 | + }, | |
| 5481 | + "which": { | |
| 5482 | + "version": "2.0.2", | |
| 5483 | + "resolved": "https://registry.npm.taobao.org/which/download/which-2.0.2.tgz", | |
| 5484 | + "integrity": "sha1-fGqN0KY2oDJ+ELWckobu6T8/UbE=", | |
| 5485 | + "dev": true, | |
| 5486 | + "requires": { | |
| 5487 | + "isexe": "^2.0.0" | |
| 5488 | + } | |
| 5489 | + } | |
| 5490 | + } | |
| 5491 | + }, | |
| 5492 | + "eslint-config-prettier": { | |
| 5493 | + "version": "6.11.0", | |
| 5494 | + "resolved": "https://registry.npm.taobao.org/eslint-config-prettier/download/eslint-config-prettier-6.11.0.tgz", | |
| 5495 | + "integrity": "sha1-9tIjjBKQ0ByFmotcH301KgsNqLE=", | |
| 5496 | + "dev": true, | |
| 5497 | + "requires": { | |
| 5498 | + "get-stdin": "^6.0.0" | |
| 5499 | + }, | |
| 5500 | + "dependencies": { | |
| 5501 | + "get-stdin": { | |
| 5502 | + "version": "6.0.0", | |
| 5503 | + "resolved": "https://registry.npm.taobao.org/get-stdin/download/get-stdin-6.0.0.tgz", | |
| 5504 | + "integrity": "sha1-ngm/cSs2CrkiXoEgSPcf3pyJZXs=", | |
| 5505 | + "dev": true | |
| 5506 | + } | |
| 5507 | + } | |
| 5508 | + }, | |
| 5509 | + "eslint-config-standard": { | |
| 5510 | + "version": "14.1.1", | |
| 5511 | + "resolved": "https://registry.npm.taobao.org/eslint-config-standard/download/eslint-config-standard-14.1.1.tgz", | |
| 5512 | + "integrity": "sha1-gwqOROeu995nRkl5rQa0BgJsVuo=", | |
| 5513 | + "dev": true | |
| 5514 | + }, | |
| 5515 | + "eslint-import-resolver-node": { | |
| 5516 | + "version": "0.3.3", | |
| 5517 | + "resolved": "https://registry.npm.taobao.org/eslint-import-resolver-node/download/eslint-import-resolver-node-0.3.3.tgz?cache=0&sync_timestamp=1578726660361&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-import-resolver-node%2Fdownload%2Feslint-import-resolver-node-0.3.3.tgz", | |
| 5518 | + "integrity": "sha1-26pStrKBa1C8ZxGvdUIt6AjphAQ=", | |
| 5519 | + "dev": true, | |
| 5520 | + "requires": { | |
| 5521 | + "debug": "^2.6.9", | |
| 5522 | + "resolve": "^1.13.1" | |
| 5523 | + }, | |
| 5524 | + "dependencies": { | |
| 5525 | + "debug": { | |
| 5526 | + "version": "2.6.9", | |
| 5527 | + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", | |
| 5528 | + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", | |
| 5529 | + "dev": true, | |
| 5530 | + "requires": { | |
| 5531 | + "ms": "2.0.0" | |
| 5532 | + } | |
| 5533 | + }, | |
| 5534 | + "ms": { | |
| 5535 | + "version": "2.0.0", | |
| 5536 | + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&sync_timestamp=1575472461218&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", | |
| 5537 | + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", | |
| 5538 | + "dev": true | |
| 5539 | + } | |
| 5540 | + } | |
| 5541 | + }, | |
| 5542 | + "eslint-module-utils": { | |
| 5543 | + "version": "2.6.0", | |
| 5544 | + "resolved": "https://registry.npm.taobao.org/eslint-module-utils/download/eslint-module-utils-2.6.0.tgz", | |
| 5545 | + "integrity": "sha1-V569CU9Wr3eX0ZyYZsnJSGYpv6Y=", | |
| 5546 | + "dev": true, | |
| 5547 | + "requires": { | |
| 5548 | + "debug": "^2.6.9", | |
| 5549 | + "pkg-dir": "^2.0.0" | |
| 5550 | + }, | |
| 5551 | + "dependencies": { | |
| 5552 | + "debug": { | |
| 5553 | + "version": "2.6.9", | |
| 5554 | + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", | |
| 5555 | + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", | |
| 5556 | + "dev": true, | |
| 5557 | + "requires": { | |
| 5558 | + "ms": "2.0.0" | |
| 5559 | + } | |
| 5560 | + }, | |
| 5561 | + "find-up": { | |
| 5562 | + "version": "2.1.0", | |
| 5563 | + "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-2.1.0.tgz", | |
| 5564 | + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", | |
| 5565 | + "dev": true, | |
| 5566 | + "requires": { | |
| 5567 | + "locate-path": "^2.0.0" | |
| 5568 | + } | |
| 5569 | + }, | |
| 5570 | + "locate-path": { | |
| 5571 | + "version": "2.0.0", | |
| 5572 | + "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-2.0.0.tgz", | |
| 5573 | + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", | |
| 5574 | + "dev": true, | |
| 5575 | + "requires": { | |
| 5576 | + "p-locate": "^2.0.0", | |
| 5577 | + "path-exists": "^3.0.0" | |
| 5578 | + } | |
| 5579 | + }, | |
| 5580 | + "ms": { | |
| 5581 | + "version": "2.0.0", | |
| 5582 | + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&sync_timestamp=1575472461218&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", | |
| 5583 | + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", | |
| 5584 | + "dev": true | |
| 5585 | + }, | |
| 5586 | + "p-limit": { | |
| 5587 | + "version": "1.3.0", | |
| 5588 | + "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-1.3.0.tgz", | |
| 5589 | + "integrity": "sha1-uGvV8MJWkJEcdZD8v8IBDVSzzLg=", | |
| 5590 | + "dev": true, | |
| 5591 | + "requires": { | |
| 5592 | + "p-try": "^1.0.0" | |
| 5593 | + } | |
| 5594 | + }, | |
| 5595 | + "p-locate": { | |
| 5596 | + "version": "2.0.0", | |
| 5597 | + "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-2.0.0.tgz", | |
| 5598 | + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", | |
| 5599 | + "dev": true, | |
| 5600 | + "requires": { | |
| 5601 | + "p-limit": "^1.1.0" | |
| 5602 | + } | |
| 5603 | + }, | |
| 5604 | + "p-try": { | |
| 5605 | + "version": "1.0.0", | |
| 5606 | + "resolved": "https://registry.npm.taobao.org/p-try/download/p-try-1.0.0.tgz", | |
| 5607 | + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", | |
| 5608 | + "dev": true | |
| 5609 | + }, | |
| 5610 | + "pkg-dir": { | |
| 5611 | + "version": "2.0.0", | |
| 5612 | + "resolved": "https://registry.npm.taobao.org/pkg-dir/download/pkg-dir-2.0.0.tgz", | |
| 5613 | + "integrity": "sha1-9tXREJ4Z1j7fQo4L1X4Sd3YVM0s=", | |
| 5614 | + "dev": true, | |
| 5615 | + "requires": { | |
| 5616 | + "find-up": "^2.1.0" | |
| 5617 | + } | |
| 5618 | + } | |
| 5619 | + } | |
| 5620 | + }, | |
| 5621 | + "eslint-plugin-es": { | |
| 5622 | + "version": "3.0.1", | |
| 5623 | + "resolved": "https://registry.npm.taobao.org/eslint-plugin-es/download/eslint-plugin-es-3.0.1.tgz", | |
| 5624 | + "integrity": "sha1-dafN/czdwFiZNK7rOEF18iHFeJM=", | |
| 5625 | + "dev": true, | |
| 5626 | + "requires": { | |
| 5627 | + "eslint-utils": "^2.0.0", | |
| 5628 | + "regexpp": "^3.0.0" | |
| 5629 | + } | |
| 5630 | + }, | |
| 5631 | + "eslint-plugin-import": { | |
| 5632 | + "version": "2.20.2", | |
| 5633 | + "resolved": "https://registry.npm.taobao.org/eslint-plugin-import/download/eslint-plugin-import-2.20.2.tgz?cache=0&sync_timestamp=1585455691029&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-plugin-import%2Fdownload%2Feslint-plugin-import-2.20.2.tgz", | |
| 5634 | + "integrity": "sha1-kfw4B84Ivkg3FBJyyLmQc5BuWI0=", | |
| 5635 | + "dev": true, | |
| 5636 | + "requires": { | |
| 5637 | + "array-includes": "^3.0.3", | |
| 5638 | + "array.prototype.flat": "^1.2.1", | |
| 5639 | + "contains-path": "^0.1.0", | |
| 5640 | + "debug": "^2.6.9", | |
| 5641 | + "doctrine": "1.5.0", | |
| 5642 | + "eslint-import-resolver-node": "^0.3.2", | |
| 5643 | + "eslint-module-utils": "^2.4.1", | |
| 5644 | + "has": "^1.0.3", | |
| 5645 | + "minimatch": "^3.0.4", | |
| 5646 | + "object.values": "^1.1.0", | |
| 5647 | + "read-pkg-up": "^2.0.0", | |
| 5648 | + "resolve": "^1.12.0" | |
| 5649 | + }, | |
| 5650 | + "dependencies": { | |
| 5651 | + "debug": { | |
| 5652 | + "version": "2.6.9", | |
| 5653 | + "resolved": "https://registry.npm.taobao.org/debug/download/debug-2.6.9.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fdebug%2Fdownload%2Fdebug-2.6.9.tgz", | |
| 5654 | + "integrity": "sha1-XRKFFd8TT/Mn6QpMk/Tgd6U2NB8=", | |
| 5655 | + "dev": true, | |
| 5656 | + "requires": { | |
| 5657 | + "ms": "2.0.0" | |
| 5658 | + } | |
| 5659 | + }, | |
| 5660 | + "find-up": { | |
| 5661 | + "version": "2.1.0", | |
| 5662 | + "resolved": "https://registry.npm.taobao.org/find-up/download/find-up-2.1.0.tgz", | |
| 5663 | + "integrity": "sha1-RdG35QbHF93UgndaK3eSCjwMV6c=", | |
| 5664 | + "dev": true, | |
| 5665 | + "requires": { | |
| 5666 | + "locate-path": "^2.0.0" | |
| 5667 | + } | |
| 5668 | + }, | |
| 5669 | + "load-json-file": { | |
| 5670 | + "version": "2.0.0", | |
| 5671 | + "resolved": "https://registry.npm.taobao.org/load-json-file/download/load-json-file-2.0.0.tgz", | |
| 5672 | + "integrity": "sha1-eUfkIUmvgNaWy/eXvKq8/h/inKg=", | |
| 5673 | + "dev": true, | |
| 5674 | + "requires": { | |
| 5675 | + "graceful-fs": "^4.1.2", | |
| 5676 | + "parse-json": "^2.2.0", | |
| 5677 | + "pify": "^2.0.0", | |
| 5678 | + "strip-bom": "^3.0.0" | |
| 5679 | + } | |
| 5680 | + }, | |
| 5681 | + "locate-path": { | |
| 5682 | + "version": "2.0.0", | |
| 5683 | + "resolved": "https://registry.npm.taobao.org/locate-path/download/locate-path-2.0.0.tgz", | |
| 5684 | + "integrity": "sha1-K1aLJl7slExtnA3pw9u7ygNUzY4=", | |
| 5685 | + "dev": true, | |
| 5686 | + "requires": { | |
| 5687 | + "p-locate": "^2.0.0", | |
| 5688 | + "path-exists": "^3.0.0" | |
| 5689 | + } | |
| 5690 | + }, | |
| 5691 | + "ms": { | |
| 5692 | + "version": "2.0.0", | |
| 5693 | + "resolved": "https://registry.npm.taobao.org/ms/download/ms-2.0.0.tgz?cache=0&sync_timestamp=1575472461218&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fms%2Fdownload%2Fms-2.0.0.tgz", | |
| 5694 | + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=", | |
| 5695 | + "dev": true | |
| 5696 | + }, | |
| 5697 | + "p-limit": { | |
| 5698 | + "version": "1.3.0", | |
| 5699 | + "resolved": "https://registry.npm.taobao.org/p-limit/download/p-limit-1.3.0.tgz", | |
| 5700 | + "integrity": "sha1-uGvV8MJWkJEcdZD8v8IBDVSzzLg=", | |
| 5701 | + "dev": true, | |
| 5702 | + "requires": { | |
| 5703 | + "p-try": "^1.0.0" | |
| 5704 | + } | |
| 5705 | + }, | |
| 5706 | + "p-locate": { | |
| 5707 | + "version": "2.0.0", | |
| 5708 | + "resolved": "https://registry.npm.taobao.org/p-locate/download/p-locate-2.0.0.tgz", | |
| 5709 | + "integrity": "sha1-IKAQOyIqcMj9OcwuWAaA893l7EM=", | |
| 5710 | + "dev": true, | |
| 5711 | + "requires": { | |
| 5712 | + "p-limit": "^1.1.0" | |
| 5713 | + } | |
| 5714 | + }, | |
| 5715 | + "p-try": { | |
| 5716 | + "version": "1.0.0", | |
| 5717 | + "resolved": "https://registry.npm.taobao.org/p-try/download/p-try-1.0.0.tgz", | |
| 5718 | + "integrity": "sha1-y8ec26+P1CKOE/Yh8rGiN8GyB7M=", | |
| 5719 | + "dev": true | |
| 5720 | + }, | |
| 5721 | + "parse-json": { | |
| 5722 | + "version": "2.2.0", | |
| 5723 | + "resolved": "https://registry.npm.taobao.org/parse-json/download/parse-json-2.2.0.tgz", | |
| 5724 | + "integrity": "sha1-9ID0BDTvgHQfhGkJn43qGPVaTck=", | |
| 5725 | + "dev": true, | |
| 5726 | + "requires": { | |
| 5727 | + "error-ex": "^1.2.0" | |
| 5728 | + } | |
| 5729 | + }, | |
| 5730 | + "path-type": { | |
| 5731 | + "version": "2.0.0", | |
| 5732 | + "resolved": "https://registry.npm.taobao.org/path-type/download/path-type-2.0.0.tgz", | |
| 5733 | + "integrity": "sha1-8BLMuEFbcJb8LaoQVMPXI4lZTHM=", | |
| 5734 | + "dev": true, | |
| 5735 | + "requires": { | |
| 5736 | + "pify": "^2.0.0" | |
| 5737 | + } | |
| 5738 | + }, | |
| 5739 | + "pify": { | |
| 5740 | + "version": "2.3.0", | |
| 5741 | + "resolved": "https://registry.npm.taobao.org/pify/download/pify-2.3.0.tgz?cache=0&sync_timestamp=1581697613983&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fpify%2Fdownload%2Fpify-2.3.0.tgz", | |
| 5742 | + "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=", | |
| 5743 | + "dev": true | |
| 5744 | + }, | |
| 5745 | + "read-pkg": { | |
| 5746 | + "version": "2.0.0", | |
| 5747 | + "resolved": "https://registry.npm.taobao.org/read-pkg/download/read-pkg-2.0.0.tgz", | |
| 5748 | + "integrity": "sha1-jvHAYjxqbbDcZxPEv6xGMysjaPg=", | |
| 5749 | + "dev": true, | |
| 5750 | + "requires": { | |
| 5751 | + "load-json-file": "^2.0.0", | |
| 5752 | + "normalize-package-data": "^2.3.2", | |
| 5753 | + "path-type": "^2.0.0" | |
| 5754 | + } | |
| 5755 | + }, | |
| 5756 | + "read-pkg-up": { | |
| 5757 | + "version": "2.0.0", | |
| 5758 | + "resolved": "https://registry.npm.taobao.org/read-pkg-up/download/read-pkg-up-2.0.0.tgz?cache=0&sync_timestamp=1575620685999&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fread-pkg-up%2Fdownload%2Fread-pkg-up-2.0.0.tgz", | |
| 5759 | + "integrity": "sha1-a3KoBImE4MQeeVEP1en6mbO1Sb4=", | |
| 5760 | + "dev": true, | |
| 5761 | + "requires": { | |
| 5762 | + "find-up": "^2.0.0", | |
| 5763 | + "read-pkg": "^2.0.0" | |
| 5764 | + } | |
| 5765 | + }, | |
| 5766 | + "strip-bom": { | |
| 5767 | + "version": "3.0.0", | |
| 5768 | + "resolved": "https://registry.npm.taobao.org/strip-bom/download/strip-bom-3.0.0.tgz", | |
| 5769 | + "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=", | |
| 5770 | + "dev": true | |
| 5771 | + } | |
| 5772 | + } | |
| 5773 | + }, | |
| 5774 | + "eslint-plugin-node": { | |
| 5775 | + "version": "11.1.0", | |
| 5776 | + "resolved": "https://registry.npm.taobao.org/eslint-plugin-node/download/eslint-plugin-node-11.1.0.tgz", | |
| 5777 | + "integrity": "sha1-yVVEQW7kraJnQKMEdO78VALcZx0=", | |
| 5778 | + "dev": true, | |
| 5779 | + "requires": { | |
| 5780 | + "eslint-plugin-es": "^3.0.0", | |
| 5781 | + "eslint-utils": "^2.0.0", | |
| 5782 | + "ignore": "^5.1.1", | |
| 5783 | + "minimatch": "^3.0.4", | |
| 5784 | + "resolve": "^1.10.1", | |
| 5785 | + "semver": "^6.1.0" | |
| 5786 | + }, | |
| 5787 | + "dependencies": { | |
| 5788 | + "ignore": { | |
| 5789 | + "version": "5.1.4", | |
| 5790 | + "resolved": "https://registry.npm.taobao.org/ignore/download/ignore-5.1.4.tgz", | |
| 5791 | + "integrity": "sha1-hLez2+ZFUrbvDsqZ9nQ9vsbZet8=", | |
| 5792 | + "dev": true | |
| 5793 | + }, | |
| 5794 | + "semver": { | |
| 5795 | + "version": "6.3.0", | |
| 5796 | + "resolved": "https://registry.npm.taobao.org/semver/download/semver-6.3.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsemver%2Fdownload%2Fsemver-6.3.0.tgz", | |
| 5797 | + "integrity": "sha1-7gpkyK9ejO6mdoexM3YeG+y9HT0=", | |
| 5798 | + "dev": true | |
| 5799 | + } | |
| 5800 | + } | |
| 5801 | + }, | |
| 5802 | + "eslint-plugin-prettier": { | |
| 5803 | + "version": "3.1.3", | |
| 5804 | + "resolved": "https://registry.npm.taobao.org/eslint-plugin-prettier/download/eslint-plugin-prettier-3.1.3.tgz?cache=0&sync_timestamp=1586740919303&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-plugin-prettier%2Fdownload%2Feslint-plugin-prettier-3.1.3.tgz", | |
| 5805 | + "integrity": "sha1-rhFqD8DlmP2uSHQ6RDCQPeW05so=", | |
| 5806 | + "dev": true, | |
| 5807 | + "requires": { | |
| 5808 | + "prettier-linter-helpers": "^1.0.0" | |
| 5809 | + } | |
| 5810 | + }, | |
| 5811 | + "eslint-plugin-promise": { | |
| 5812 | + "version": "4.2.1", | |
| 5813 | + "resolved": "https://registry.npm.taobao.org/eslint-plugin-promise/download/eslint-plugin-promise-4.2.1.tgz", | |
| 5814 | + "integrity": "sha1-hF/YsiYK2PglZMEiL85ErXHZQYo=", | |
| 5815 | + "dev": true | |
| 5816 | + }, | |
| 5817 | + "eslint-plugin-standard": { | |
| 5818 | + "version": "4.0.1", | |
| 5819 | + "resolved": "https://registry.npm.taobao.org/eslint-plugin-standard/download/eslint-plugin-standard-4.0.1.tgz", | |
| 5820 | + "integrity": "sha1-/wUZ9/+v8RT3bRvXw5lu7w9uILQ=", | |
| 5821 | + "dev": true | |
| 5822 | + }, | |
| 5823 | + "eslint-plugin-vue": { | |
| 5824 | + "version": "6.2.2", | |
| 5825 | + "resolved": "https://registry.npm.taobao.org/eslint-plugin-vue/download/eslint-plugin-vue-6.2.2.tgz", | |
| 5826 | + "integrity": "sha1-J/7NmjokeJsPER7N1UCp5WGY4P4=", | |
| 5827 | + "dev": true, | |
| 5828 | + "requires": { | |
| 5829 | + "natural-compare": "^1.4.0", | |
| 5830 | + "semver": "^5.6.0", | |
| 5831 | + "vue-eslint-parser": "^7.0.0" | |
| 5832 | + } | |
| 5833 | + }, | |
| 5028 | 5834 | "eslint-scope": { |
| 5029 | 5835 | "version": "4.0.3", |
| 5030 | 5836 | "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-4.0.3.tgz", |
| ... | ... | @@ -5034,16 +5840,61 @@ |
| 5034 | 5840 | "estraverse": "^4.1.1" |
| 5035 | 5841 | } |
| 5036 | 5842 | }, |
| 5843 | + "eslint-utils": { | |
| 5844 | + "version": "2.0.0", | |
| 5845 | + "resolved": "https://registry.npm.taobao.org/eslint-utils/download/eslint-utils-2.0.0.tgz?cache=0&sync_timestamp=1577351142754&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Feslint-utils%2Fdownload%2Feslint-utils-2.0.0.tgz", | |
| 5846 | + "integrity": "sha1-e+HMcPJ6cqds0UqmmLyr7WiQ4c0=", | |
| 5847 | + "dev": true, | |
| 5848 | + "requires": { | |
| 5849 | + "eslint-visitor-keys": "^1.1.0" | |
| 5850 | + } | |
| 5851 | + }, | |
| 5037 | 5852 | "eslint-visitor-keys": { |
| 5038 | 5853 | "version": "1.1.0", |
| 5039 | 5854 | "resolved": "https://registry.npm.taobao.org/eslint-visitor-keys/download/eslint-visitor-keys-1.1.0.tgz", |
| 5040 | 5855 | "integrity": "sha1-4qgs6oT/JGrW+1f5veW0ZiFFnsI=" |
| 5041 | 5856 | }, |
| 5857 | + "espree": { | |
| 5858 | + "version": "6.2.1", | |
| 5859 | + "resolved": "https://registry.npm.taobao.org/espree/download/espree-6.2.1.tgz?cache=0&sync_timestamp=1588886720119&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fespree%2Fdownload%2Fespree-6.2.1.tgz", | |
| 5860 | + "integrity": "sha1-d/xy4f10SiBSwg84pbV1gy6Cc0o=", | |
| 5861 | + "dev": true, | |
| 5862 | + "requires": { | |
| 5863 | + "acorn": "^7.1.1", | |
| 5864 | + "acorn-jsx": "^5.2.0", | |
| 5865 | + "eslint-visitor-keys": "^1.1.0" | |
| 5866 | + }, | |
| 5867 | + "dependencies": { | |
| 5868 | + "acorn": { | |
| 5869 | + "version": "7.2.0", | |
| 5870 | + "resolved": "https://registry.npm.taobao.org/acorn/download/acorn-7.2.0.tgz?cache=0&sync_timestamp=1589008014473&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Facorn%2Fdownload%2Facorn-7.2.0.tgz", | |
| 5871 | + "integrity": "sha1-F+p+QNfIZA/1SmlMiJwm8xcE7/4=", | |
| 5872 | + "dev": true | |
| 5873 | + } | |
| 5874 | + } | |
| 5875 | + }, | |
| 5042 | 5876 | "esprima": { |
| 5043 | 5877 | "version": "4.0.1", |
| 5044 | 5878 | "resolved": "http://registry.npm.taobao.org/esprima/download/esprima-4.0.1.tgz", |
| 5045 | 5879 | "integrity": "sha1-E7BM2z5sXRnfkatph6hpVhmwqnE=" |
| 5046 | 5880 | }, |
| 5881 | + "esquery": { | |
| 5882 | + "version": "1.3.1", | |
| 5883 | + "resolved": "https://registry.npm.taobao.org/esquery/download/esquery-1.3.1.tgz", | |
| 5884 | + "integrity": "sha1-t4tYKKqOIU4p+3TE1bdS4cAz2lc=", | |
| 5885 | + "dev": true, | |
| 5886 | + "requires": { | |
| 5887 | + "estraverse": "^5.1.0" | |
| 5888 | + }, | |
| 5889 | + "dependencies": { | |
| 5890 | + "estraverse": { | |
| 5891 | + "version": "5.1.0", | |
| 5892 | + "resolved": "https://registry.npm.taobao.org/estraverse/download/estraverse-5.1.0.tgz?cache=0&sync_timestamp=1586968717941&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Festraverse%2Fdownload%2Festraverse-5.1.0.tgz", | |
| 5893 | + "integrity": "sha1-N0MJ05/ZNa5QDnuS6Ka0xyDllkI=", | |
| 5894 | + "dev": true | |
| 5895 | + } | |
| 5896 | + } | |
| 5897 | + }, | |
| 5047 | 5898 | "esrecurse": { |
| 5048 | 5899 | "version": "4.2.1", |
| 5049 | 5900 | "resolved": "http://registry.npm.taobao.org/esrecurse/download/esrecurse-4.2.1.tgz", |
| ... | ... | @@ -5248,6 +6099,17 @@ |
| 5248 | 6099 | } |
| 5249 | 6100 | } |
| 5250 | 6101 | }, |
| 6102 | + "external-editor": { | |
| 6103 | + "version": "3.1.0", | |
| 6104 | + "resolved": "https://registry.npm.taobao.org/external-editor/download/external-editor-3.1.0.tgz", | |
| 6105 | + "integrity": "sha1-ywP3QL764D6k0oPK7SdBqD8zVJU=", | |
| 6106 | + "dev": true, | |
| 6107 | + "requires": { | |
| 6108 | + "chardet": "^0.7.0", | |
| 6109 | + "iconv-lite": "^0.4.24", | |
| 6110 | + "tmp": "^0.0.33" | |
| 6111 | + } | |
| 6112 | + }, | |
| 5251 | 6113 | "extglob": { |
| 5252 | 6114 | "version": "2.0.4", |
| 5253 | 6115 | "resolved": "http://registry.npm.taobao.org/extglob/download/extglob-2.0.4.tgz", |
| ... | ... | @@ -5317,6 +6179,12 @@ |
| 5317 | 6179 | "resolved": "https://registry.npm.taobao.org/fast-deep-equal/download/fast-deep-equal-3.1.1.tgz", |
| 5318 | 6180 | "integrity": "sha1-VFFFB3xQFJHjOxXsQIwpQ3bpSuQ=" |
| 5319 | 6181 | }, |
| 6182 | + "fast-diff": { | |
| 6183 | + "version": "1.2.0", | |
| 6184 | + "resolved": "https://registry.npm.taobao.org/fast-diff/download/fast-diff-1.2.0.tgz", | |
| 6185 | + "integrity": "sha1-c+4RmC2Gyq95WYKNUZz+kn+sXwM=", | |
| 6186 | + "dev": true | |
| 6187 | + }, | |
| 5320 | 6188 | "fast-glob": { |
| 5321 | 6189 | "version": "2.2.7", |
| 5322 | 6190 | "resolved": "https://registry.npm.taobao.org/fast-glob/download/fast-glob-2.2.7.tgz?cache=0&sync_timestamp=1582318370324&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ffast-glob%2Fdownload%2Ffast-glob-2.2.7.tgz", |
| ... | ... | @@ -5355,6 +6223,24 @@ |
| 5355 | 6223 | "resolved": "https://registry.npm.taobao.org/figgy-pudding/download/figgy-pudding-3.5.2.tgz", |
| 5356 | 6224 | "integrity": "sha1-tO7oFIq7Adzx0aw0Nn1Z4S+mHW4=" |
| 5357 | 6225 | }, |
| 6226 | + "figures": { | |
| 6227 | + "version": "3.2.0", | |
| 6228 | + "resolved": "https://registry.npm.taobao.org/figures/download/figures-3.2.0.tgz", | |
| 6229 | + "integrity": "sha1-YlwYvSk8YE3EqN2y/r8MiDQXRq8=", | |
| 6230 | + "dev": true, | |
| 6231 | + "requires": { | |
| 6232 | + "escape-string-regexp": "^1.0.5" | |
| 6233 | + } | |
| 6234 | + }, | |
| 6235 | + "file-entry-cache": { | |
| 6236 | + "version": "5.0.1", | |
| 6237 | + "resolved": "https://registry.npm.taobao.org/file-entry-cache/download/file-entry-cache-5.0.1.tgz", | |
| 6238 | + "integrity": "sha1-yg9u+m3T1WEzP7FFFQZcL6/fQ5w=", | |
| 6239 | + "dev": true, | |
| 6240 | + "requires": { | |
| 6241 | + "flat-cache": "^2.0.1" | |
| 6242 | + } | |
| 6243 | + }, | |
| 5358 | 6244 | "file-loader": { |
| 5359 | 6245 | "version": "4.3.0", |
| 5360 | 6246 | "resolved": "https://registry.npm.taobao.org/file-loader/download/file-loader-4.3.0.tgz", |
| ... | ... | @@ -5460,6 +6346,34 @@ |
| 5460 | 6346 | "locate-path": "^3.0.0" |
| 5461 | 6347 | } |
| 5462 | 6348 | }, |
| 6349 | + "flat-cache": { | |
| 6350 | + "version": "2.0.1", | |
| 6351 | + "resolved": "https://registry.npm.taobao.org/flat-cache/download/flat-cache-2.0.1.tgz", | |
| 6352 | + "integrity": "sha1-XSltbwS9pEpGMKMBQTvbwuwIXsA=", | |
| 6353 | + "dev": true, | |
| 6354 | + "requires": { | |
| 6355 | + "flatted": "^2.0.0", | |
| 6356 | + "rimraf": "2.6.3", | |
| 6357 | + "write": "1.0.3" | |
| 6358 | + }, | |
| 6359 | + "dependencies": { | |
| 6360 | + "rimraf": { | |
| 6361 | + "version": "2.6.3", | |
| 6362 | + "resolved": "https://registry.npm.taobao.org/rimraf/download/rimraf-2.6.3.tgz?cache=0&sync_timestamp=1581229948248&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frimraf%2Fdownload%2Frimraf-2.6.3.tgz", | |
| 6363 | + "integrity": "sha1-stEE/g2Psnz54KHNqCYt04M8bKs=", | |
| 6364 | + "dev": true, | |
| 6365 | + "requires": { | |
| 6366 | + "glob": "^7.1.3" | |
| 6367 | + } | |
| 6368 | + } | |
| 6369 | + } | |
| 6370 | + }, | |
| 6371 | + "flatted": { | |
| 6372 | + "version": "2.0.2", | |
| 6373 | + "resolved": "https://registry.npm.taobao.org/flatted/download/flatted-2.0.2.tgz", | |
| 6374 | + "integrity": "sha1-RXWyHivO50NKqb5mL0t7X5wrUTg=", | |
| 6375 | + "dev": true | |
| 6376 | + }, | |
| 5463 | 6377 | "flush-write-stream": { |
| 5464 | 6378 | "version": "1.1.1", |
| 5465 | 6379 | "resolved": "http://registry.npm.taobao.org/flush-write-stream/download/flush-write-stream-1.1.1.tgz", |
| ... | ... | @@ -6208,6 +7122,12 @@ |
| 6208 | 7122 | "resolved": "http://registry.npm.taobao.org/function-bind/download/function-bind-1.1.1.tgz", |
| 6209 | 7123 | "integrity": "sha1-pWiZ0+o8m6uHS7l3O3xe3pL0iV0=" |
| 6210 | 7124 | }, |
| 7125 | + "functional-red-black-tree": { | |
| 7126 | + "version": "1.0.1", | |
| 7127 | + "resolved": "https://registry.npm.taobao.org/functional-red-black-tree/download/functional-red-black-tree-1.0.1.tgz", | |
| 7128 | + "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", | |
| 7129 | + "dev": true | |
| 7130 | + }, | |
| 6211 | 7131 | "gauge": { |
| 6212 | 7132 | "version": "2.7.4", |
| 6213 | 7133 | "resolved": "https://registry.npm.taobao.org/gauge/download/gauge-2.7.4.tgz", |
| ... | ... | @@ -6956,6 +7876,130 @@ |
| 6956 | 7876 | "integrity": "sha1-7uJfVtscnsYIXgwid4CD9Zar+Sc=", |
| 6957 | 7877 | "dev": true |
| 6958 | 7878 | }, |
| 7879 | + "inquirer": { | |
| 7880 | + "version": "7.1.0", | |
| 7881 | + "resolved": "https://registry.npm.taobao.org/inquirer/download/inquirer-7.1.0.tgz", | |
| 7882 | + "integrity": "sha1-EpigGFmIPhfHJkuChwrhA0+S3Sk=", | |
| 7883 | + "dev": true, | |
| 7884 | + "requires": { | |
| 7885 | + "ansi-escapes": "^4.2.1", | |
| 7886 | + "chalk": "^3.0.0", | |
| 7887 | + "cli-cursor": "^3.1.0", | |
| 7888 | + "cli-width": "^2.0.0", | |
| 7889 | + "external-editor": "^3.0.3", | |
| 7890 | + "figures": "^3.0.0", | |
| 7891 | + "lodash": "^4.17.15", | |
| 7892 | + "mute-stream": "0.0.8", | |
| 7893 | + "run-async": "^2.4.0", | |
| 7894 | + "rxjs": "^6.5.3", | |
| 7895 | + "string-width": "^4.1.0", | |
| 7896 | + "strip-ansi": "^6.0.0", | |
| 7897 | + "through": "^2.3.6" | |
| 7898 | + }, | |
| 7899 | + "dependencies": { | |
| 7900 | + "ansi-styles": { | |
| 7901 | + "version": "4.2.1", | |
| 7902 | + "resolved": "https://registry.npm.taobao.org/ansi-styles/download/ansi-styles-4.2.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fansi-styles%2Fdownload%2Fansi-styles-4.2.1.tgz", | |
| 7903 | + "integrity": "sha1-kK51xCTQCNJiTFvynq0xd+v881k=", | |
| 7904 | + "dev": true, | |
| 7905 | + "requires": { | |
| 7906 | + "@types/color-name": "^1.1.1", | |
| 7907 | + "color-convert": "^2.0.1" | |
| 7908 | + } | |
| 7909 | + }, | |
| 7910 | + "chalk": { | |
| 7911 | + "version": "3.0.0", | |
| 7912 | + "resolved": "https://registry.npm.taobao.org/chalk/download/chalk-3.0.0.tgz?cache=0&sync_timestamp=1585815759944&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fchalk%2Fdownload%2Fchalk-3.0.0.tgz", | |
| 7913 | + "integrity": "sha1-P3PCv1JlkfV0zEksUeJFY0n4ROQ=", | |
| 7914 | + "dev": true, | |
| 7915 | + "requires": { | |
| 7916 | + "ansi-styles": "^4.1.0", | |
| 7917 | + "supports-color": "^7.1.0" | |
| 7918 | + } | |
| 7919 | + }, | |
| 7920 | + "cli-cursor": { | |
| 7921 | + "version": "3.1.0", | |
| 7922 | + "resolved": "https://registry.npm.taobao.org/cli-cursor/download/cli-cursor-3.1.0.tgz", | |
| 7923 | + "integrity": "sha1-JkMFp65JDR0Dvwybp8kl0XU68wc=", | |
| 7924 | + "dev": true, | |
| 7925 | + "requires": { | |
| 7926 | + "restore-cursor": "^3.1.0" | |
| 7927 | + } | |
| 7928 | + }, | |
| 7929 | + "color-convert": { | |
| 7930 | + "version": "2.0.1", | |
| 7931 | + "resolved": "https://registry.npm.taobao.org/color-convert/download/color-convert-2.0.1.tgz", | |
| 7932 | + "integrity": "sha1-ctOmjVmMm9s68q0ehPIdiWq9TeM=", | |
| 7933 | + "dev": true, | |
| 7934 | + "requires": { | |
| 7935 | + "color-name": "~1.1.4" | |
| 7936 | + } | |
| 7937 | + }, | |
| 7938 | + "color-name": { | |
| 7939 | + "version": "1.1.4", | |
| 7940 | + "resolved": "https://registry.npm.taobao.org/color-name/download/color-name-1.1.4.tgz", | |
| 7941 | + "integrity": "sha1-wqCah6y95pVD3m9j+jmVyCbFNqI=", | |
| 7942 | + "dev": true | |
| 7943 | + }, | |
| 7944 | + "has-flag": { | |
| 7945 | + "version": "4.0.0", | |
| 7946 | + "resolved": "https://registry.npm.taobao.org/has-flag/download/has-flag-4.0.0.tgz", | |
| 7947 | + "integrity": "sha1-lEdx/ZyByBJlxNaUGGDaBrtZR5s=", | |
| 7948 | + "dev": true | |
| 7949 | + }, | |
| 7950 | + "is-fullwidth-code-point": { | |
| 7951 | + "version": "3.0.0", | |
| 7952 | + "resolved": "https://registry.npm.taobao.org/is-fullwidth-code-point/download/is-fullwidth-code-point-3.0.0.tgz", | |
| 7953 | + "integrity": "sha1-8Rb4Bk/pCz94RKOJl8C3UFEmnx0=", | |
| 7954 | + "dev": true | |
| 7955 | + }, | |
| 7956 | + "mimic-fn": { | |
| 7957 | + "version": "2.1.0", | |
| 7958 | + "resolved": "https://registry.npm.taobao.org/mimic-fn/download/mimic-fn-2.1.0.tgz", | |
| 7959 | + "integrity": "sha1-ftLCzMyvhNP/y3pptXcR/CCDQBs=", | |
| 7960 | + "dev": true | |
| 7961 | + }, | |
| 7962 | + "onetime": { | |
| 7963 | + "version": "5.1.0", | |
| 7964 | + "resolved": "https://registry.npm.taobao.org/onetime/download/onetime-5.1.0.tgz", | |
| 7965 | + "integrity": "sha1-//DzyRYX/mK7UBiWNumayKbfe+U=", | |
| 7966 | + "dev": true, | |
| 7967 | + "requires": { | |
| 7968 | + "mimic-fn": "^2.1.0" | |
| 7969 | + } | |
| 7970 | + }, | |
| 7971 | + "restore-cursor": { | |
| 7972 | + "version": "3.1.0", | |
| 7973 | + "resolved": "https://registry.npm.taobao.org/restore-cursor/download/restore-cursor-3.1.0.tgz", | |
| 7974 | + "integrity": "sha1-OfZ8VLOnpYzqUjbZXPADQjljH34=", | |
| 7975 | + "dev": true, | |
| 7976 | + "requires": { | |
| 7977 | + "onetime": "^5.1.0", | |
| 7978 | + "signal-exit": "^3.0.2" | |
| 7979 | + } | |
| 7980 | + }, | |
| 7981 | + "string-width": { | |
| 7982 | + "version": "4.2.0", | |
| 7983 | + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-4.2.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-4.2.0.tgz", | |
| 7984 | + "integrity": "sha1-lSGCxGzHssMT0VluYjmSvRY7crU=", | |
| 7985 | + "dev": true, | |
| 7986 | + "requires": { | |
| 7987 | + "emoji-regex": "^8.0.0", | |
| 7988 | + "is-fullwidth-code-point": "^3.0.0", | |
| 7989 | + "strip-ansi": "^6.0.0" | |
| 7990 | + } | |
| 7991 | + }, | |
| 7992 | + "supports-color": { | |
| 7993 | + "version": "7.1.0", | |
| 7994 | + "resolved": "https://registry.npm.taobao.org/supports-color/download/supports-color-7.1.0.tgz?cache=0&sync_timestamp=1569557271992&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fsupports-color%2Fdownload%2Fsupports-color-7.1.0.tgz", | |
| 7995 | + "integrity": "sha1-aOMlkd9z4lrRxLSRCKLsUHliv9E=", | |
| 7996 | + "dev": true, | |
| 7997 | + "requires": { | |
| 7998 | + "has-flag": "^4.0.0" | |
| 7999 | + } | |
| 8000 | + } | |
| 8001 | + } | |
| 8002 | + }, | |
| 6959 | 8003 | "internal-ip": { |
| 6960 | 8004 | "version": "4.3.0", |
| 6961 | 8005 | "resolved": "https://registry.npm.taobao.org/internal-ip/download/internal-ip-4.3.0.tgz?cache=0&sync_timestamp=1584010513586&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Finternal-ip%2Fdownload%2Finternal-ip-4.3.0.tgz", |
| ... | ... | @@ -7263,6 +8307,12 @@ |
| 7263 | 8307 | "integrity": "sha1-EtSj3U5o4Lec6428hBc66A2RykQ=", |
| 7264 | 8308 | "dev": true |
| 7265 | 8309 | }, |
| 8310 | + "is-string": { | |
| 8311 | + "version": "1.0.5", | |
| 8312 | + "resolved": "https://registry.npm.taobao.org/is-string/download/is-string-1.0.5.tgz?cache=0&sync_timestamp=1576731545458&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fis-string%2Fdownload%2Fis-string-1.0.5.tgz", | |
| 8313 | + "integrity": "sha1-QEk+0ZjvP/R3uMf5L2ROyCpc06Y=", | |
| 8314 | + "dev": true | |
| 8315 | + }, | |
| 7266 | 8316 | "is-svg": { |
| 7267 | 8317 | "version": "3.0.0", |
| 7268 | 8318 | "resolved": "https://registry.npm.taobao.org/is-svg/download/is-svg-3.0.0.tgz", |
| ... | ... | @@ -7416,6 +8466,12 @@ |
| 7416 | 8466 | "resolved": "http://registry.npm.taobao.org/json-schema-traverse/download/json-schema-traverse-0.4.1.tgz", |
| 7417 | 8467 | "integrity": "sha1-afaofZUTq4u4/mO9sJecRI5oRmA=" |
| 7418 | 8468 | }, |
| 8469 | + "json-stable-stringify-without-jsonify": { | |
| 8470 | + "version": "1.0.1", | |
| 8471 | + "resolved": "https://registry.npm.taobao.org/json-stable-stringify-without-jsonify/download/json-stable-stringify-without-jsonify-1.0.1.tgz", | |
| 8472 | + "integrity": "sha1-nbe1lJatPzz+8wp1FC0tkwrXJlE=", | |
| 8473 | + "dev": true | |
| 8474 | + }, | |
| 7419 | 8475 | "json-stringify-safe": { |
| 7420 | 8476 | "version": "5.0.1", |
| 7421 | 8477 | "resolved": "http://registry.npm.taobao.org/json-stringify-safe/download/json-stringify-safe-5.0.1.tgz", |
| ... | ... | @@ -8292,6 +9348,12 @@ |
| 8292 | 9348 | "integrity": "sha1-ieeKnSB9ePJ5mx6Vdkolv3GigyI=", |
| 8293 | 9349 | "dev": true |
| 8294 | 9350 | }, |
| 9351 | + "mute-stream": { | |
| 9352 | + "version": "0.0.8", | |
| 9353 | + "resolved": "https://registry.npm.taobao.org/mute-stream/download/mute-stream-0.0.8.tgz", | |
| 9354 | + "integrity": "sha1-FjDEKyJR/4HiooPelqVJfqkuXg0=", | |
| 9355 | + "dev": true | |
| 9356 | + }, | |
| 8295 | 9357 | "mz": { |
| 8296 | 9358 | "version": "2.7.0", |
| 8297 | 9359 | "resolved": "http://registry.npm.taobao.org/mz/download/mz-2.7.0.tgz", |
| ... | ... | @@ -8325,6 +9387,12 @@ |
| 8325 | 9387 | "to-regex": "^3.0.1" |
| 8326 | 9388 | } |
| 8327 | 9389 | }, |
| 9390 | + "natural-compare": { | |
| 9391 | + "version": "1.4.0", | |
| 9392 | + "resolved": "https://registry.npm.taobao.org/natural-compare/download/natural-compare-1.4.0.tgz", | |
| 9393 | + "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=", | |
| 9394 | + "dev": true | |
| 9395 | + }, | |
| 8328 | 9396 | "negotiator": { |
| 8329 | 9397 | "version": "0.6.2", |
| 8330 | 9398 | "resolved": "https://registry.npm.taobao.org/negotiator/download/negotiator-0.6.2.tgz", |
| ... | ... | @@ -8943,6 +10011,23 @@ |
| 8943 | 10011 | "no-case": "^2.2.0" |
| 8944 | 10012 | } |
| 8945 | 10013 | }, |
| 10014 | + "parent-module": { | |
| 10015 | + "version": "1.0.1", | |
| 10016 | + "resolved": "https://registry.npm.taobao.org/parent-module/download/parent-module-1.0.1.tgz", | |
| 10017 | + "integrity": "sha1-aR0nCeeMefrjoVZiJFLQB2LKqqI=", | |
| 10018 | + "dev": true, | |
| 10019 | + "requires": { | |
| 10020 | + "callsites": "^3.0.0" | |
| 10021 | + }, | |
| 10022 | + "dependencies": { | |
| 10023 | + "callsites": { | |
| 10024 | + "version": "3.1.0", | |
| 10025 | + "resolved": "https://registry.npm.taobao.org/callsites/download/callsites-3.1.0.tgz", | |
| 10026 | + "integrity": "sha1-s2MKvYlDQy9Us/BRkjjjPNffL3M=", | |
| 10027 | + "dev": true | |
| 10028 | + } | |
| 10029 | + } | |
| 10030 | + }, | |
| 8946 | 10031 | "parse-asn1": { |
| 8947 | 10032 | "version": "5.1.5", |
| 8948 | 10033 | "resolved": "https://registry.npm.taobao.org/parse-asn1/download/parse-asn1-5.1.5.tgz", |
| ... | ... | @@ -9764,10 +10849,19 @@ |
| 9764 | 10849 | "dev": true |
| 9765 | 10850 | }, |
| 9766 | 10851 | "prettier": { |
| 9767 | - "version": "1.19.1", | |
| 9768 | - "resolved": "https://registry.npm.taobao.org/prettier/download/prettier-1.19.1.tgz", | |
| 9769 | - "integrity": "sha1-99f1/4qc2HKnvkyhQglZVqYHl8s=", | |
| 9770 | - "optional": true | |
| 10852 | + "version": "2.0.5", | |
| 10853 | + "resolved": "https://registry.npm.taobao.org/prettier/download/prettier-2.0.5.tgz", | |
| 10854 | + "integrity": "sha1-1tVigkVSQ/L5LMFxZpLAiqMVItQ=", | |
| 10855 | + "dev": true | |
| 10856 | + }, | |
| 10857 | + "prettier-linter-helpers": { | |
| 10858 | + "version": "1.0.0", | |
| 10859 | + "resolved": "https://registry.npm.taobao.org/prettier-linter-helpers/download/prettier-linter-helpers-1.0.0.tgz", | |
| 10860 | + "integrity": "sha1-0j1B/hN1ZG3i0BBNNFSjAIgCz3s=", | |
| 10861 | + "dev": true, | |
| 10862 | + "requires": { | |
| 10863 | + "fast-diff": "^1.1.2" | |
| 10864 | + } | |
| 9771 | 10865 | }, |
| 9772 | 10866 | "pretty-error": { |
| 9773 | 10867 | "version": "2.1.1", |
| ... | ... | @@ -9794,6 +10888,12 @@ |
| 9794 | 10888 | "resolved": "https://registry.npm.taobao.org/process-nextick-args/download/process-nextick-args-2.0.1.tgz", |
| 9795 | 10889 | "integrity": "sha1-eCDZsWEgzFXKmud5JoCufbptf+I=" |
| 9796 | 10890 | }, |
| 10891 | + "progress": { | |
| 10892 | + "version": "2.0.3", | |
| 10893 | + "resolved": "https://registry.npm.taobao.org/progress/download/progress-2.0.3.tgz", | |
| 10894 | + "integrity": "sha1-foz42PW48jnBvGi+tOt4Vn1XLvg=", | |
| 10895 | + "dev": true | |
| 10896 | + }, | |
| 9797 | 10897 | "promise-inflight": { |
| 9798 | 10898 | "version": "1.0.1", |
| 9799 | 10899 | "resolved": "http://registry.npm.taobao.org/promise-inflight/download/promise-inflight-1.0.1.tgz", |
| ... | ... | @@ -10161,6 +11261,12 @@ |
| 10161 | 11261 | "es-abstract": "^1.17.0-next.1" |
| 10162 | 11262 | } |
| 10163 | 11263 | }, |
| 11264 | + "regexpp": { | |
| 11265 | + "version": "3.1.0", | |
| 11266 | + "resolved": "https://registry.npm.taobao.org/regexpp/download/regexpp-3.1.0.tgz", | |
| 11267 | + "integrity": "sha1-IG0K0KVkjP+9uK5GQ489xRyfeOI=", | |
| 11268 | + "dev": true | |
| 11269 | + }, | |
| 10164 | 11270 | "regexpu-core": { |
| 10165 | 11271 | "version": "4.7.0", |
| 10166 | 11272 | "resolved": "https://registry.npm.taobao.org/regexpu-core/download/regexpu-core-4.7.0.tgz", |
| ... | ... | @@ -10476,6 +11582,12 @@ |
| 10476 | 11582 | "inherits": "^2.0.1" |
| 10477 | 11583 | } |
| 10478 | 11584 | }, |
| 11585 | + "run-async": { | |
| 11586 | + "version": "2.4.1", | |
| 11587 | + "resolved": "https://registry.npm.taobao.org/run-async/download/run-async-2.4.1.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Frun-async%2Fdownload%2Frun-async-2.4.1.tgz", | |
| 11588 | + "integrity": "sha1-hEDsz5nqPnC9QJ1JqriOEMGJpFU=", | |
| 11589 | + "dev": true | |
| 11590 | + }, | |
| 10479 | 11591 | "run-queue": { |
| 10480 | 11592 | "version": "1.0.3", |
| 10481 | 11593 | "resolved": "http://registry.npm.taobao.org/run-queue/download/run-queue-1.0.3.tgz", |
| ... | ... | @@ -10484,6 +11596,15 @@ |
| 10484 | 11596 | "aproba": "^1.1.1" |
| 10485 | 11597 | } |
| 10486 | 11598 | }, |
| 11599 | + "rxjs": { | |
| 11600 | + "version": "6.5.5", | |
| 11601 | + "resolved": "https://registry.npm.taobao.org/rxjs/download/rxjs-6.5.5.tgz", | |
| 11602 | + "integrity": "sha1-xciE4wlMjP7jG/J+uH5UzPyH+ew=", | |
| 11603 | + "dev": true, | |
| 11604 | + "requires": { | |
| 11605 | + "tslib": "^1.9.0" | |
| 11606 | + } | |
| 11607 | + }, | |
| 10487 | 11608 | "safe-area-insets": { |
| 10488 | 11609 | "version": "1.4.1", |
| 10489 | 11610 | "resolved": "https://registry.npm.taobao.org/safe-area-insets/download/safe-area-insets-1.4.1.tgz", |
| ... | ... | @@ -11015,6 +12136,17 @@ |
| 11015 | 12136 | "integrity": "sha1-xB8vbDn8FtHNF61LXYlhFK5HDVU=", |
| 11016 | 12137 | "dev": true |
| 11017 | 12138 | }, |
| 12139 | + "slice-ansi": { | |
| 12140 | + "version": "2.1.0", | |
| 12141 | + "resolved": "https://registry.npm.taobao.org/slice-ansi/download/slice-ansi-2.1.0.tgz", | |
| 12142 | + "integrity": "sha1-ys12k0YaY3pXiNkqfdT7oGjoFjY=", | |
| 12143 | + "dev": true, | |
| 12144 | + "requires": { | |
| 12145 | + "ansi-styles": "^3.2.0", | |
| 12146 | + "astral-regex": "^1.0.0", | |
| 12147 | + "is-fullwidth-code-point": "^2.0.0" | |
| 12148 | + } | |
| 12149 | + }, | |
| 11018 | 12150 | "snapdragon": { |
| 11019 | 12151 | "version": "0.8.2", |
| 11020 | 12152 | "resolved": "http://registry.npm.taobao.org/snapdragon/download/snapdragon-0.8.2.tgz", |
| ... | ... | @@ -11732,6 +12864,46 @@ |
| 11732 | 12864 | "util.promisify": "~1.0.0" |
| 11733 | 12865 | } |
| 11734 | 12866 | }, |
| 12867 | + "table": { | |
| 12868 | + "version": "5.4.6", | |
| 12869 | + "resolved": "https://registry.npm.taobao.org/table/download/table-5.4.6.tgz", | |
| 12870 | + "integrity": "sha1-EpLRlQDOP4YFOwXw6Ofko7shB54=", | |
| 12871 | + "dev": true, | |
| 12872 | + "requires": { | |
| 12873 | + "ajv": "^6.10.2", | |
| 12874 | + "lodash": "^4.17.14", | |
| 12875 | + "slice-ansi": "^2.1.0", | |
| 12876 | + "string-width": "^3.0.0" | |
| 12877 | + }, | |
| 12878 | + "dependencies": { | |
| 12879 | + "emoji-regex": { | |
| 12880 | + "version": "7.0.3", | |
| 12881 | + "resolved": "https://registry.npm.taobao.org/emoji-regex/download/emoji-regex-7.0.3.tgz", | |
| 12882 | + "integrity": "sha1-kzoEBShgyF6DwSJHnEdIqOTHIVY=", | |
| 12883 | + "dev": true | |
| 12884 | + }, | |
| 12885 | + "string-width": { | |
| 12886 | + "version": "3.1.0", | |
| 12887 | + "resolved": "https://registry.npm.taobao.org/string-width/download/string-width-3.1.0.tgz?cache=0&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fstring-width%2Fdownload%2Fstring-width-3.1.0.tgz", | |
| 12888 | + "integrity": "sha1-InZ74htirxCBV0MG9prFG2IgOWE=", | |
| 12889 | + "dev": true, | |
| 12890 | + "requires": { | |
| 12891 | + "emoji-regex": "^7.0.1", | |
| 12892 | + "is-fullwidth-code-point": "^2.0.0", | |
| 12893 | + "strip-ansi": "^5.1.0" | |
| 12894 | + } | |
| 12895 | + }, | |
| 12896 | + "strip-ansi": { | |
| 12897 | + "version": "5.2.0", | |
| 12898 | + "resolved": "https://registry.npm.taobao.org/strip-ansi/download/strip-ansi-5.2.0.tgz", | |
| 12899 | + "integrity": "sha1-jJpTb+tq/JYr36WxBKUJHBrZwK4=", | |
| 12900 | + "dev": true, | |
| 12901 | + "requires": { | |
| 12902 | + "ansi-regex": "^4.1.0" | |
| 12903 | + } | |
| 12904 | + } | |
| 12905 | + } | |
| 12906 | + }, | |
| 11735 | 12907 | "tapable": { |
| 11736 | 12908 | "version": "1.1.3", |
| 11737 | 12909 | "resolved": "https://registry.npm.taobao.org/tapable/download/tapable-1.1.3.tgz", |
| ... | ... | @@ -11774,6 +12946,12 @@ |
| 11774 | 12946 | "worker-farm": "^1.7.0" |
| 11775 | 12947 | } |
| 11776 | 12948 | }, |
| 12949 | + "text-table": { | |
| 12950 | + "version": "0.2.0", | |
| 12951 | + "resolved": "https://registry.npm.taobao.org/text-table/download/text-table-0.2.0.tgz", | |
| 12952 | + "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=", | |
| 12953 | + "dev": true | |
| 12954 | + }, | |
| 11777 | 12955 | "thenify": { |
| 11778 | 12956 | "version": "3.3.0", |
| 11779 | 12957 | "resolved": "http://registry.npm.taobao.org/thenify/download/thenify-3.3.0.tgz", |
| ... | ... | @@ -11801,6 +12979,12 @@ |
| 11801 | 12979 | "neo-async": "^2.6.0" |
| 11802 | 12980 | } |
| 11803 | 12981 | }, |
| 12982 | + "through": { | |
| 12983 | + "version": "2.3.8", | |
| 12984 | + "resolved": "https://registry.npm.taobao.org/through/download/through-2.3.8.tgz", | |
| 12985 | + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", | |
| 12986 | + "dev": true | |
| 12987 | + }, | |
| 11804 | 12988 | "through2": { |
| 11805 | 12989 | "version": "2.0.5", |
| 11806 | 12990 | "resolved": "http://registry.npm.taobao.org/through2/download/through2-2.0.5.tgz", |
| ... | ... | @@ -11830,6 +13014,15 @@ |
| 11830 | 13014 | "integrity": "sha1-QFQRqOfmM5/mTbmiNN4R3DHgK9Q=", |
| 11831 | 13015 | "dev": true |
| 11832 | 13016 | }, |
| 13017 | + "tmp": { | |
| 13018 | + "version": "0.0.33", | |
| 13019 | + "resolved": "https://registry.npm.taobao.org/tmp/download/tmp-0.0.33.tgz?cache=0&sync_timestamp=1588178820677&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Ftmp%2Fdownload%2Ftmp-0.0.33.tgz", | |
| 13020 | + "integrity": "sha1-bTQzWIl2jSGyvNoKonfO07G/rfk=", | |
| 13021 | + "dev": true, | |
| 13022 | + "requires": { | |
| 13023 | + "os-tmpdir": "~1.0.2" | |
| 13024 | + } | |
| 13025 | + }, | |
| 11833 | 13026 | "to-array": { |
| 11834 | 13027 | "version": "0.1.4", |
| 11835 | 13028 | "resolved": "https://registry.npm.taobao.org/to-array/download/to-array-0.1.4.tgz", |
| ... | ... | @@ -12358,6 +13551,12 @@ |
| 12358 | 13551 | "resolved": "https://registry.npm.taobao.org/uuid/download/uuid-3.4.0.tgz?cache=0&sync_timestamp=1585684408543&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fuuid%2Fdownload%2Fuuid-3.4.0.tgz", |
| 12359 | 13552 | "integrity": "sha1-sj5DWK+oogL+ehAK8fX4g/AgB+4=" |
| 12360 | 13553 | }, |
| 13554 | + "v8-compile-cache": { | |
| 13555 | + "version": "2.1.0", | |
| 13556 | + "resolved": "https://registry.npm.taobao.org/v8-compile-cache/download/v8-compile-cache-2.1.0.tgz", | |
| 13557 | + "integrity": "sha1-4U3jezGm0ZT1aQ1n78Tn9vxqsw4=", | |
| 13558 | + "dev": true | |
| 13559 | + }, | |
| 12361 | 13560 | "validate-npm-package-license": { |
| 12362 | 13561 | "version": "3.0.4", |
| 12363 | 13562 | "resolved": "http://registry.npm.taobao.org/validate-npm-package-license/download/validate-npm-package-license-3.0.4.tgz", |
| ... | ... | @@ -12404,6 +13603,32 @@ |
| 12404 | 13603 | "resolved": "https://registry.npm.taobao.org/vue-class-component/download/vue-class-component-6.3.2.tgz", |
| 12405 | 13604 | "integrity": "sha1-5gN+hNHfKvO95PRV5Qyhue7AK+Y=" |
| 12406 | 13605 | }, |
| 13606 | + "vue-eslint-parser": { | |
| 13607 | + "version": "7.1.0", | |
| 13608 | + "resolved": "https://registry.npm.taobao.org/vue-eslint-parser/download/vue-eslint-parser-7.1.0.tgz?cache=0&sync_timestamp=1589539313907&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fvue-eslint-parser%2Fdownload%2Fvue-eslint-parser-7.1.0.tgz", | |
| 13609 | + "integrity": "sha1-nNvMgj5lawh1B6GRFzK4Z6wQHoM=", | |
| 13610 | + "dev": true, | |
| 13611 | + "requires": { | |
| 13612 | + "debug": "^4.1.1", | |
| 13613 | + "eslint-scope": "^5.0.0", | |
| 13614 | + "eslint-visitor-keys": "^1.1.0", | |
| 13615 | + "espree": "^6.2.1", | |
| 13616 | + "esquery": "^1.0.1", | |
| 13617 | + "lodash": "^4.17.15" | |
| 13618 | + }, | |
| 13619 | + "dependencies": { | |
| 13620 | + "eslint-scope": { | |
| 13621 | + "version": "5.0.0", | |
| 13622 | + "resolved": "https://registry.npm.taobao.org/eslint-scope/download/eslint-scope-5.0.0.tgz", | |
| 13623 | + "integrity": "sha1-6HyIh8c+jR7ITxylkWRcNYv8j7k=", | |
| 13624 | + "dev": true, | |
| 13625 | + "requires": { | |
| 13626 | + "esrecurse": "^4.1.0", | |
| 13627 | + "estraverse": "^4.1.1" | |
| 13628 | + } | |
| 13629 | + } | |
| 13630 | + } | |
| 13631 | + }, | |
| 12407 | 13632 | "vue-hot-reload-api": { |
| 12408 | 13633 | "version": "2.3.4", |
| 12409 | 13634 | "resolved": "https://registry.npm.taobao.org/vue-hot-reload-api/download/vue-hot-reload-api-2.3.4.tgz", |
| ... | ... | @@ -12912,6 +14137,15 @@ |
| 12912 | 14137 | "resolved": "http://registry.npm.taobao.org/wrappy/download/wrappy-1.0.2.tgz", |
| 12913 | 14138 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=" |
| 12914 | 14139 | }, |
| 14140 | + "write": { | |
| 14141 | + "version": "1.0.3", | |
| 14142 | + "resolved": "https://registry.npm.taobao.org/write/download/write-1.0.3.tgz", | |
| 14143 | + "integrity": "sha1-CADhRSO5I6OH5BUSPIZWFqrg9cM=", | |
| 14144 | + "dev": true, | |
| 14145 | + "requires": { | |
| 14146 | + "mkdirp": "^0.5.1" | |
| 14147 | + } | |
| 14148 | + }, | |
| 12915 | 14149 | "ws": { |
| 12916 | 14150 | "version": "6.2.1", |
| 12917 | 14151 | "resolved": "https://registry.npm.taobao.org/ws/download/ws-6.2.1.tgz?cache=0&sync_timestamp=1587811730960&other_urls=https%3A%2F%2Fregistry.npm.taobao.org%2Fws%2Fdownload%2Fws-6.2.1.tgz", | ... | ... |
package.json
| ... | ... | @@ -60,13 +60,25 @@ |
| 60 | 60 | "@dcloudio/vue-cli-plugin-uni-optimize": "^2.0.0-26920200424005", |
| 61 | 61 | "@dcloudio/webpack-uni-mp-loader": "^2.0.0-26920200424005", |
| 62 | 62 | "@dcloudio/webpack-uni-pages-loader": "^2.0.0-26920200424005", |
| 63 | + "@typescript-eslint/eslint-plugin": "^3.0.0", | |
| 64 | + "@typescript-eslint/parser": "^3.0.0", | |
| 63 | 65 | "@vue/cli-plugin-babel": "~4.3.0", |
| 64 | 66 | "@vue/cli-plugin-typescript": "*", |
| 65 | 67 | "@vue/cli-service": "~4.3.0", |
| 66 | 68 | "babel-plugin-import": "^1.11.0", |
| 67 | 69 | "cross-env": "^7.0.2", |
| 70 | + "eslint": "^7.0.0", | |
| 71 | + "eslint-config-prettier": "^6.11.0", | |
| 72 | + "eslint-config-standard": "^14.1.1", | |
| 73 | + "eslint-plugin-import": "^2.20.2", | |
| 74 | + "eslint-plugin-node": "^11.1.0", | |
| 75 | + "eslint-plugin-prettier": "^3.1.3", | |
| 76 | + "eslint-plugin-promise": "^4.2.1", | |
| 77 | + "eslint-plugin-standard": "^4.0.1", | |
| 78 | + "eslint-plugin-vue": "^6.2.2", | |
| 68 | 79 | "node-sass": "^4.14.0", |
| 69 | 80 | "postcss-comment": "^2.0.0", |
| 81 | + "prettier": "^2.0.5", | |
| 70 | 82 | "sass-loader": "^8.0.2", |
| 71 | 83 | "typescript": "^3.0.0", |
| 72 | 84 | "vue-template-compiler": "^2.6.11" | ... | ... |
src/components/CommodityCard/CommodityCard.vue
| 1 | 1 | <template> |
| 2 | - <view class="card" @tap="toGoods(goods.id,goods.goodType)"> | |
| 3 | - <image mode="widthFix" :src="goods.imgurl" ></image> | |
| 4 | - <view class="name">{{goods.name}}</view> | |
| 5 | - <view class="info"> | |
| 6 | - <view class="priceBox"> | |
| 7 | - <view class="price">{{goods.price}}</view> | |
| 8 | - <view class="originCost"> | |
| 9 | - {{goods.rsSon.Max_Price}} | |
| 10 | - </view> | |
| 11 | - </view> | |
| 12 | - <view class="trade_num">{{goods.trade_num}}人购买</view> | |
| 13 | - </view> | |
| 14 | - </view> | |
| 2 | + <view | |
| 3 | + class="card" | |
| 4 | + @tap="toGoods(goods.id,goods.goodType)" | |
| 5 | + > | |
| 6 | + <image | |
| 7 | + mode="widthFix" | |
| 8 | + :src="goods.imgurl" | |
| 9 | + ></image> | |
| 10 | + <view class="name">{{goods.name}}</view> | |
| 11 | + <view class="info"> | |
| 12 | + <view class="priceBox"> | |
| 13 | + <view class="price">{{goods.price}}</view> | |
| 14 | + <view class="originCost"> | |
| 15 | + {{goods.rsSon.Max_Price}} | |
| 16 | + </view> | |
| 17 | + </view> | |
| 18 | + <view class="trade_num">{{goods.trade_num}}人购买</view> | |
| 19 | + </view> | |
| 20 | + </view> | |
| 15 | 21 | </template> |
| 16 | 22 | |
| 17 | 23 | <script> |
| 18 | - export default { | |
| 19 | - props: { | |
| 20 | - /** | |
| 21 | - * 商品数据 | |
| 22 | - */ | |
| 23 | - goods: { | |
| 24 | - id: Number, | |
| 25 | - imgurl: String, | |
| 26 | - name: String, | |
| 27 | - rsSon:Object, | |
| 28 | - originCost:String, | |
| 29 | - price: String, | |
| 30 | - trade_num:String, | |
| 31 | - goodType:String, | |
| 32 | - } | |
| 33 | - | |
| 34 | - }, | |
| 35 | - created() { | |
| 36 | - // console.log(this.goods) | |
| 37 | - }, | |
| 38 | - data() { | |
| 39 | - return { | |
| 40 | - | |
| 41 | - }; | |
| 42 | - }, | |
| 43 | - methods:{ | |
| 44 | - toGoods(id,type){ | |
| 45 | - uni.navigateTo({ | |
| 46 | - url: `../frameDetail/frameDetail?oderId=`+id, | |
| 47 | - success: res => {}, | |
| 48 | - fail: () => {}, | |
| 49 | - complete: () => {} | |
| 50 | - }); | |
| 51 | - console.log('toGoods =====> id:'+id +"======>type:"+type) | |
| 52 | - switch(type){ | |
| 53 | - case 1: | |
| 54 | - uni.navigateTo({ | |
| 55 | - url: `../frameDetail/frameDetail?oderId=`+id+`&goodType=`+type, | |
| 56 | - success: res => {}, | |
| 57 | - fail: () => {}, | |
| 58 | - complete: () => {} | |
| 59 | - }); | |
| 60 | - break; | |
| 61 | - case 2: | |
| 62 | - uni.navigateTo({ | |
| 63 | - url: `../frameDetail/frameDetail?oderId=`+id+`&goodType=`+type, | |
| 64 | - success: res => {}, | |
| 65 | - fail: () => {}, | |
| 66 | - complete: () => {} | |
| 67 | - }); | |
| 68 | - break; | |
| 69 | - case 3: | |
| 70 | - uni.navigateTo({ | |
| 71 | - url: `../frameDetail/frameDetail?oderId=`+id+`&goodType=`+type, | |
| 72 | - success: res => {}, | |
| 73 | - fail: () => {}, | |
| 74 | - complete: () => {} | |
| 75 | - }); | |
| 76 | - break; | |
| 77 | - case 4: | |
| 78 | - uni.navigateTo({ | |
| 79 | - url: `../frameDetail/frameDetail?oderId=`+id+`&goodType=`+type, | |
| 80 | - success: res => {}, | |
| 81 | - fail: () => {}, | |
| 82 | - complete: () => {} | |
| 83 | - }); | |
| 84 | - break; | |
| 85 | - default : | |
| 86 | - break | |
| 87 | - } | |
| 88 | - } | |
| 89 | - } | |
| 90 | - } | |
| 24 | +export default { | |
| 25 | + props: { | |
| 26 | + /** | |
| 27 | + * 商品数据 | |
| 28 | + */ | |
| 29 | + goods: { | |
| 30 | + id: Number, | |
| 31 | + imgurl: String, | |
| 32 | + name: String, | |
| 33 | + rsSon: Object, | |
| 34 | + originCost: String, | |
| 35 | + price: String, | |
| 36 | + trade_num: String, | |
| 37 | + goodType: String | |
| 38 | + } | |
| 39 | + | |
| 40 | + }, | |
| 41 | + created () { | |
| 42 | + // console.log(this.goods) | |
| 43 | + }, | |
| 44 | + data () { | |
| 45 | + return { | |
| 46 | + | |
| 47 | + } | |
| 48 | + }, | |
| 49 | + methods: { | |
| 50 | + toGoods (id, type) { | |
| 51 | + console.log('---', '../frameDetail/frameDetail?oderId=' + id) | |
| 52 | + uni.navigateTo({ | |
| 53 | + url: '../frameDetail/frameDetail?oderId=' + id, | |
| 54 | + success: res => {}, | |
| 55 | + fail: () => {}, | |
| 56 | + complete: () => {} | |
| 57 | + }) | |
| 58 | + console.log('toGoods =====> id:' + id + '======>type:' + type) | |
| 59 | + switch (type) { | |
| 60 | + case 1: | |
| 61 | + uni.navigateTo({ | |
| 62 | + url: '../frameDetail/frameDetail?oderId=' + id + '&goodType=' + type, | |
| 63 | + success: res => {}, | |
| 64 | + fail: () => {}, | |
| 65 | + complete: () => {} | |
| 66 | + }) | |
| 67 | + break | |
| 68 | + case 2: | |
| 69 | + uni.navigateTo({ | |
| 70 | + url: '../frameDetail/frameDetail?oderId=' + id + '&goodType=' + type, | |
| 71 | + success: res => {}, | |
| 72 | + fail: () => {}, | |
| 73 | + complete: () => {} | |
| 74 | + }) | |
| 75 | + break | |
| 76 | + case 3: | |
| 77 | + uni.navigateTo({ | |
| 78 | + url: '../frameDetail/frameDetail?oderId=' + id + '&goodType=' + type, | |
| 79 | + success: res => {}, | |
| 80 | + fail: () => {}, | |
| 81 | + complete: () => {} | |
| 82 | + }) | |
| 83 | + break | |
| 84 | + case 4: | |
| 85 | + uni.navigateTo({ | |
| 86 | + url: '../frameDetail/frameDetail?oderId=' + id + '&goodType=' + type, | |
| 87 | + success: res => {}, | |
| 88 | + fail: () => {}, | |
| 89 | + complete: () => {} | |
| 90 | + }) | |
| 91 | + break | |
| 92 | + default : | |
| 93 | + break | |
| 94 | + } | |
| 95 | + } | |
| 96 | + } | |
| 97 | +} | |
| 91 | 98 | </script> |
| 92 | 99 | |
| 93 | 100 | <style lang="scss"> |
| 94 | - image{ | |
| 95 | - width: 100%; | |
| 96 | - height: 120rpx; | |
| 97 | - } | |
| 98 | - .name{ | |
| 99 | - width: 92%; | |
| 100 | - height: 54rpx; | |
| 101 | - padding: 5px 4%; | |
| 102 | - display: -webkit-box; | |
| 103 | - -webkit-box-orient: vertical; | |
| 104 | - -webkit-line-clamp: 2; | |
| 105 | - text-align: justify; | |
| 106 | - overflow: hidden; | |
| 107 | - font-size: 24rpx; | |
| 108 | - color: #333333; | |
| 109 | - } | |
| 110 | - .info{ | |
| 111 | - display: flex; | |
| 112 | - justify-content: space-between; | |
| 113 | - align-items: center; | |
| 114 | - width: 92%; | |
| 115 | - padding: 5px 4% 5px 4%; | |
| 116 | - .priceBox{ | |
| 117 | - display: flex; | |
| 118 | - justify-content: space-between; | |
| 119 | - align-items: center; | |
| 120 | - .price{ | |
| 121 | - color: #EB5D3B; | |
| 122 | - font-size: 28rpx; | |
| 123 | - font-weight: 600; | |
| 124 | - margin-right: 10rpx; | |
| 125 | - } | |
| 126 | - .originCost{ | |
| 127 | - text-decoration:line-through; | |
| 128 | - color: #999999; | |
| 129 | - font-size: 20rpx; | |
| 130 | - } | |
| 131 | - | |
| 132 | - } | |
| 133 | - .trade_num{ | |
| 134 | - color: #999999; | |
| 135 | - font-size: 20rpx; | |
| 136 | - } | |
| 137 | - } | |
| 138 | -</style> | |
| 139 | 101 | \ No newline at end of file |
| 102 | +image { | |
| 103 | + width: 100%; | |
| 104 | + height: 120rpx; | |
| 105 | +} | |
| 106 | +.name { | |
| 107 | + width: 92%; | |
| 108 | + height: 54rpx; | |
| 109 | + padding: 5px 4%; | |
| 110 | + display: -webkit-box; | |
| 111 | + -webkit-box-orient: vertical; | |
| 112 | + -webkit-line-clamp: 2; | |
| 113 | + text-align: justify; | |
| 114 | + overflow: hidden; | |
| 115 | + font-size: 24rpx; | |
| 116 | + color: #333333; | |
| 117 | +} | |
| 118 | +.info { | |
| 119 | + display: flex; | |
| 120 | + justify-content: space-between; | |
| 121 | + align-items: center; | |
| 122 | + width: 92%; | |
| 123 | + padding: 5px 4% 5px 4%; | |
| 124 | + .priceBox { | |
| 125 | + display: flex; | |
| 126 | + justify-content: space-between; | |
| 127 | + align-items: center; | |
| 128 | + .price { | |
| 129 | + color: #eb5d3b; | |
| 130 | + font-size: 28rpx; | |
| 131 | + font-weight: 600; | |
| 132 | + margin-right: 10rpx; | |
| 133 | + } | |
| 134 | + .originCost { | |
| 135 | + text-decoration: line-through; | |
| 136 | + color: #999999; | |
| 137 | + font-size: 20rpx; | |
| 138 | + } | |
| 139 | + } | |
| 140 | + .trade_num { | |
| 141 | + color: #999999; | |
| 142 | + font-size: 20rpx; | |
| 143 | + } | |
| 144 | +} | |
| 145 | +</style> | ... | ... |
src/components/SimpleAddress/SimpleAddress.vue
| 1 | 1 | <template> |
| 2 | - <view class="simple-address" v-if="showPopup" @touchmove.stop.prevent="clear"> | |
| 3 | - <!-- 遮罩层 --> | |
| 4 | - <view | |
| 5 | - class="simple-address-mask" | |
| 6 | - @touchmove.stop.prevent="clear" | |
| 7 | - v-if="maskClick" | |
| 8 | - :class="[ani + '-mask', animation ? 'mask-ani' : '']" | |
| 9 | - :style="{ | |
| 10 | - 'background-color': maskBgColor | |
| 11 | - }" | |
| 12 | - @tap="hideMask(true)" | |
| 13 | - ></view> | |
| 2 | + <view | |
| 3 | + class="simple-address" | |
| 4 | + v-if="showPopup" | |
| 5 | + @touchmove.stop.prevent="clear" | |
| 6 | + > | |
| 7 | + <!-- 遮罩层 --> | |
| 8 | + <view | |
| 9 | + class="simple-address-mask" | |
| 10 | + @touchmove.stop.prevent="clear" | |
| 11 | + v-if="maskClick" | |
| 12 | + :class="[ani + '-mask', animation ? 'mask-ani' : '']" | |
| 13 | + :style="{ | |
| 14 | + 'background-color': maskBgColor | |
| 15 | + }" | |
| 16 | + @tap="hideMask(true)" | |
| 17 | + ></view> | |
| 14 | 18 | |
| 15 | - <view class="simple-address-content simple-address--fixed" :class="[type, ani + '-content', animation ? 'content-ani' : '']"> | |
| 16 | - <view class="simple-address__header"> | |
| 17 | - <view class="simple-address__header-btn-box" @click="pickerCancel"> | |
| 18 | - <text class="simple-address__header-text" :style="{ color: cancelColor, fontSize: btnFontSize }">取消</text> | |
| 19 | - </view> | |
| 20 | - <view class="simple-address__header-btn-box" @click="pickerConfirm"> | |
| 21 | - <text class="simple-address__header-text" :style="{ color: confirmColor || themeColor, fontSize: btnFontSize }">确定</text> | |
| 22 | - </view> | |
| 23 | - </view> | |
| 24 | - <view class="simple-address__box"> | |
| 25 | - <picker-view indicator-style="height: 70rpx;" class="simple-address-view" :value="pickerValue" @change="pickerChange"> | |
| 26 | - <picker-view-column> | |
| 27 | - <!-- #ifndef APP-NVUE --> | |
| 28 | - <view class="picker-item" :style="{ fontSize: fontSize }" v-for="(item, index) in provinceDataList" :key="index">{{ item.label }}</view> | |
| 29 | - <!-- #endif --> | |
| 30 | - <!-- #ifdef APP-NVUE --> | |
| 31 | - <text class="picker-item" :style="{ fontSize: fontSize }" v-for="(item, index) in provinceDataList" :key="index">{{ item.label }}</text> | |
| 32 | - <!-- #endif --> | |
| 33 | - </picker-view-column> | |
| 34 | - <picker-view-column> | |
| 35 | - <!-- #ifndef APP-NVUE --> | |
| 36 | - <view class="picker-item" :style="{ fontSize: fontSize }" v-for="(item, index) in cityDataList" :key="index">{{ item.label }}</view> | |
| 37 | - <!-- #endif --> | |
| 38 | - <!-- #ifdef APP-NVUE --> | |
| 39 | - <text class="picker-item" :style="{ fontSize: fontSize }" v-for="(item, index) in cityDataList" :key="index">{{ item.label }}</text> | |
| 40 | - <!-- #endif --> | |
| 41 | - </picker-view-column> | |
| 42 | - <picker-view-column> | |
| 43 | - <!-- #ifndef APP-NVUE --> | |
| 44 | - <view class="picker-item" :style="{ fontSize: fontSize }" v-for="(item, index) in areaDataList" :key="index">{{ item.label }}</view> | |
| 45 | - <!-- #endif --> | |
| 46 | - <!-- #ifdef APP-NVUE --> | |
| 47 | - <text class="picker-item" :style="{ fontSize: fontSize }" v-for="(item, index) in areaDataList" :key="index">{{ item.label }}</text> | |
| 48 | - <!-- #endif --> | |
| 49 | - </picker-view-column> | |
| 50 | - </picker-view> | |
| 51 | - </view> | |
| 52 | - </view> | |
| 53 | - </view> | |
| 19 | + <view | |
| 20 | + class="simple-address-content simple-address--fixed" | |
| 21 | + :class="[type, ani + '-content', animation ? 'content-ani' : '']" | |
| 22 | + > | |
| 23 | + <view class="simple-address__header"> | |
| 24 | + <view | |
| 25 | + class="simple-address__header-btn-box" | |
| 26 | + @click="pickerCancel" | |
| 27 | + > | |
| 28 | + <text | |
| 29 | + class="simple-address__header-text" | |
| 30 | + :style="{ color: cancelColor, fontSize: btnFontSize }" | |
| 31 | + >取消</text> | |
| 32 | + </view> | |
| 33 | + <view | |
| 34 | + class="simple-address__header-btn-box" | |
| 35 | + @click="pickerConfirm" | |
| 36 | + > | |
| 37 | + <text | |
| 38 | + class="simple-address__header-text" | |
| 39 | + :style="{ color: confirmColor || themeColor, fontSize: btnFontSize }" | |
| 40 | + >确定</text> | |
| 41 | + </view> | |
| 42 | + </view> | |
| 43 | + <view class="simple-address__box"> | |
| 44 | + <picker-view | |
| 45 | + indicator-style="height: 70rpx;" | |
| 46 | + class="simple-address-view" | |
| 47 | + :value="pickerValue" | |
| 48 | + @change="pickerChange" | |
| 49 | + > | |
| 50 | + <picker-view-column> | |
| 51 | + <!-- #ifndef APP-NVUE --> | |
| 52 | + <view | |
| 53 | + class="picker-item" | |
| 54 | + :style="{ fontSize: fontSize }" | |
| 55 | + v-for="(item, index) in provinceDataList" | |
| 56 | + :key="index" | |
| 57 | + >{{ item.label }}</view> | |
| 58 | + <!-- #endif --> | |
| 59 | + <!-- #ifdef APP-NVUE --> | |
| 60 | + <text | |
| 61 | + class="picker-item" | |
| 62 | + :style="{ fontSize: fontSize }" | |
| 63 | + v-for="(item, index) in provinceDataList" | |
| 64 | + :key="index" | |
| 65 | + >{{ item.label }}</text> | |
| 66 | + <!-- #endif --> | |
| 67 | + </picker-view-column> | |
| 68 | + <picker-view-column> | |
| 69 | + <!-- #ifndef APP-NVUE --> | |
| 70 | + <view | |
| 71 | + class="picker-item" | |
| 72 | + :style="{ fontSize: fontSize }" | |
| 73 | + v-for="(item, index) in cityDataList" | |
| 74 | + :key="index" | |
| 75 | + >{{ item.label }}</view> | |
| 76 | + <!-- #endif --> | |
| 77 | + <!-- #ifdef APP-NVUE --> | |
| 78 | + <text | |
| 79 | + class="picker-item" | |
| 80 | + :style="{ fontSize: fontSize }" | |
| 81 | + v-for="(item, index) in cityDataList" | |
| 82 | + :key="index" | |
| 83 | + >{{ item.label }}</text> | |
| 84 | + <!-- #endif --> | |
| 85 | + </picker-view-column> | |
| 86 | + <picker-view-column> | |
| 87 | + <!-- #ifndef APP-NVUE --> | |
| 88 | + <view | |
| 89 | + class="picker-item" | |
| 90 | + :style="{ fontSize: fontSize }" | |
| 91 | + v-for="(item, index) in areaDataList" | |
| 92 | + :key="index" | |
| 93 | + >{{ item.label }}</view> | |
| 94 | + <!-- #endif --> | |
| 95 | + <!-- #ifdef APP-NVUE --> | |
| 96 | + <text | |
| 97 | + class="picker-item" | |
| 98 | + :style="{ fontSize: fontSize }" | |
| 99 | + v-for="(item, index) in areaDataList" | |
| 100 | + :key="index" | |
| 101 | + >{{ item.label }}</text> | |
| 102 | + <!-- #endif --> | |
| 103 | + </picker-view-column> | |
| 104 | + </picker-view> | |
| 105 | + </view> | |
| 106 | + </view> | |
| 107 | + </view> | |
| 54 | 108 | </template> |
| 55 | 109 | |
| 56 | 110 | <script> |
| ... | ... | @@ -74,347 +128,346 @@ |
| 74 | 128 | * @example <simple-address ref="simpleAddress" :pickerValueDefault="cityPickerValueDefault" @onConfirm="onConfirm" themeColor='#007AFF'></simple-address> |
| 75 | 129 | */ |
| 76 | 130 | |
| 77 | -import provinceData from './cityData/province.js'; | |
| 78 | -import cityData from './cityData/city.js'; | |
| 79 | -import areaData from './cityData/area.js'; | |
| 131 | +import provinceData from './cityData/province.js' | |
| 132 | +import cityData from './cityData/city.js' | |
| 133 | +import areaData from './cityData/area.js' | |
| 80 | 134 | export default { |
| 81 | - name: 'simpleAddress', | |
| 82 | - props: { | |
| 83 | - mode: { | |
| 84 | - // 地址类型 | |
| 85 | - // default 则代表老版本根据index索引获取数据 | |
| 86 | - // | |
| 87 | - type: String, | |
| 88 | - default: 'default' | |
| 89 | - }, | |
| 90 | - // 开启动画 | |
| 91 | - animation: { | |
| 92 | - type: Boolean, | |
| 93 | - default: true | |
| 94 | - }, | |
| 95 | - /* 弹出层类型,可选值; | |
| 96 | - bottom:底部弹出层 | |
| 97 | - */ | |
| 98 | - type: { | |
| 99 | - type: String, | |
| 100 | - default: 'bottom' | |
| 101 | - }, | |
| 102 | - // maskClick | |
| 103 | - maskClick: { | |
| 104 | - type: Boolean, | |
| 105 | - default: true | |
| 106 | - }, | |
| 107 | - show: { | |
| 108 | - type: Boolean, | |
| 109 | - default: true | |
| 110 | - }, | |
| 111 | - maskBgColor: { | |
| 112 | - type: String, | |
| 113 | - default: 'rgba(0, 0, 0, 0.4)' //背景颜色 rgba(0, 0, 0, 0.4) 为空则调用 uni.scss | |
| 114 | - }, | |
| 115 | - themeColor: { | |
| 116 | - type: String, | |
| 117 | - default: '' // 确认按钮颜色(向下兼容) | |
| 118 | - }, | |
| 119 | - cancelColor: { | |
| 120 | - type: String, | |
| 121 | - default: '' // 取消按钮颜色 | |
| 122 | - }, | |
| 123 | - confirmColor: { | |
| 124 | - type: String, | |
| 125 | - default: '' // 确认按钮颜色 | |
| 126 | - }, | |
| 127 | - fontSize: { | |
| 128 | - type: String, | |
| 129 | - default: '28rpx' // picker-item字体大小 | |
| 130 | - }, | |
| 131 | - btnFontSize: { | |
| 132 | - type: String, | |
| 133 | - default: '' // 按钮的字体大小 | |
| 134 | - }, | |
| 135 | - /* 默认值 */ | |
| 136 | - pickerValueDefault: { | |
| 137 | - type: Array, | |
| 138 | - default() { | |
| 139 | - return [0, 0, 0]; | |
| 140 | - } | |
| 141 | - } | |
| 142 | - }, | |
| 143 | - data() { | |
| 144 | - return { | |
| 145 | - ani: '', | |
| 146 | - showPopup: false, | |
| 147 | - pickerValue: [0, 0, 0], | |
| 148 | - provinceDataList: [], | |
| 149 | - cityDataList: [], | |
| 150 | - areaDataList: [] | |
| 151 | - }; | |
| 152 | - }, | |
| 153 | - watch: { | |
| 154 | - show(newValue) { | |
| 155 | - if (newValue) { | |
| 156 | - this.open(); | |
| 157 | - } else { | |
| 158 | - this.close(); | |
| 159 | - } | |
| 160 | - }, | |
| 161 | - pickerValueDefault() { | |
| 162 | - this.init(); | |
| 163 | - } | |
| 164 | - }, | |
| 165 | - created() { | |
| 166 | - this.init(); | |
| 167 | - }, | |
| 168 | - methods: { | |
| 169 | - init() { | |
| 170 | - this.handPickValueDefault(); // 对 pickerValueDefault 做兼容处理 | |
| 171 | - this.provinceDataList = provinceData; | |
| 172 | - this.cityDataList = cityData[this.pickerValueDefault[0]]; | |
| 173 | - this.areaDataList = areaData[this.pickerValueDefault[0]][this.pickerValueDefault[1]]; | |
| 174 | - this.pickerValue = this.pickerValueDefault; | |
| 175 | - }, | |
| 176 | - handPickValueDefault() { | |
| 177 | - if (this.pickerValueDefault !== [0, 0, 0]) { | |
| 178 | - if (this.pickerValueDefault[0] > provinceData.length - 1) { | |
| 179 | - this.pickerValueDefault[0] = provinceData.length - 1; | |
| 180 | - } | |
| 181 | - if (this.pickerValueDefault[1] > cityData[this.pickerValueDefault[0]].length - 1) { | |
| 182 | - this.pickerValueDefault[1] = cityData[this.pickerValueDefault[0]].length - 1; | |
| 183 | - } | |
| 184 | - if (this.pickerValueDefault[2] > areaData[this.pickerValueDefault[0]][this.pickerValueDefault[1]].length - 1) { | |
| 185 | - this.pickerValueDefault[2] = areaData[this.pickerValueDefault[0]][this.pickerValueDefault[1]].length - 1; | |
| 186 | - } | |
| 187 | - } | |
| 188 | - }, | |
| 189 | - pickerChange(e) { | |
| 190 | - let changePickerValue = e.detail.value; | |
| 191 | - if (this.pickerValue[0] !== changePickerValue[0]) { | |
| 192 | - // 第一级发生滚动 | |
| 193 | - this.cityDataList = cityData[changePickerValue[0]]; | |
| 194 | - this.areaDataList = areaData[changePickerValue[0]][0]; | |
| 195 | - changePickerValue[1] = 0; | |
| 196 | - changePickerValue[2] = 0; | |
| 197 | - } else if (this.pickerValue[1] !== changePickerValue[1]) { | |
| 198 | - // 第二级滚动 | |
| 199 | - this.areaDataList = areaData[changePickerValue[0]][changePickerValue[1]]; | |
| 200 | - changePickerValue[2] = 0; | |
| 201 | - } | |
| 202 | - this.pickerValue = changePickerValue; | |
| 203 | - this._$emit('onChange'); | |
| 204 | - }, | |
| 205 | - _$emit(emitName) { | |
| 206 | - let pickObj = { | |
| 207 | - label: this._getLabel(), | |
| 208 | - value: this.pickerValue, | |
| 209 | - cityCode: this._getCityCode(), | |
| 210 | - areaCode: this._getAreaCode(), | |
| 211 | - provinceCode: this._getProvinceCode(), | |
| 212 | - labelArr: this._getLabel().split('-') | |
| 213 | - }; | |
| 214 | - this.$emit(emitName, pickObj); | |
| 215 | - }, | |
| 216 | - _getLabel() { | |
| 217 | - let pcikerLabel = | |
| 218 | - this.provinceDataList[this.pickerValue[0]].label + '-' + this.cityDataList[this.pickerValue[1]].label + '-' + this.areaDataList[this.pickerValue[2]].label; | |
| 219 | - return pcikerLabel; | |
| 220 | - }, | |
| 221 | - _getCityCode() { | |
| 222 | - return this.cityDataList[this.pickerValue[1]].value; | |
| 223 | - }, | |
| 224 | - _getProvinceCode() { | |
| 225 | - return this.provinceDataList[this.pickerValue[0]].value; | |
| 226 | - }, | |
| 227 | - _getAreaCode() { | |
| 228 | - return this.areaDataList[this.pickerValue[2]].value; | |
| 229 | - }, | |
| 230 | - queryIndex(params = [], type = 'value') { | |
| 231 | - // params = [ 11 ,1101,110101 ]; | |
| 232 | - // 1.获取省份的index | |
| 233 | - let provinceIndex = provinceData.findIndex(res => res[type] == params[0]); | |
| 234 | - let cityIndex = cityData[provinceIndex].findIndex(res => res[type] == params[1]); | |
| 235 | - let areaIndex = areaData[provinceIndex][cityIndex].findIndex(res => res[type] == params[2]); | |
| 236 | - return { | |
| 237 | - index: [provinceIndex, cityIndex, areaIndex], | |
| 238 | - data: { | |
| 239 | - province: provinceData[provinceIndex], | |
| 240 | - city: cityData[provinceIndex][cityIndex], | |
| 241 | - area: areaData[provinceIndex][cityIndex][areaIndex] | |
| 242 | - } | |
| 243 | - }; | |
| 244 | - }, | |
| 245 | - clear() {}, | |
| 246 | - hideMask() { | |
| 247 | - this._$emit('onCancel'); | |
| 248 | - this.close(); | |
| 249 | - }, | |
| 250 | - pickerCancel() { | |
| 251 | - this._$emit('onCancel'); | |
| 252 | - this.close(); | |
| 253 | - }, | |
| 254 | - pickerConfirm() { | |
| 255 | - this._$emit('onConfirm'); | |
| 256 | - this.close(); | |
| 257 | - }, | |
| 258 | - open() { | |
| 259 | - this.showPopup = true; | |
| 260 | - this.$nextTick(() => { | |
| 261 | - setTimeout(() => { | |
| 262 | - this.ani = 'simple-' + this.type; | |
| 263 | - }, 100); | |
| 264 | - }); | |
| 265 | - }, | |
| 266 | - close(type) { | |
| 267 | - if (!this.maskClick && type) return; | |
| 268 | - this.ani = ''; | |
| 269 | - this.$nextTick(() => { | |
| 270 | - setTimeout(() => { | |
| 271 | - this.showPopup = false; | |
| 272 | - }, 300); | |
| 273 | - }); | |
| 274 | - } | |
| 275 | - } | |
| 276 | -}; | |
| 135 | + name: 'simpleAddress', | |
| 136 | + props: { | |
| 137 | + mode: { | |
| 138 | + // 地址类型 | |
| 139 | + // default 则代表老版本根据index索引获取数据 | |
| 140 | + // | |
| 141 | + type: String, | |
| 142 | + default: 'default' | |
| 143 | + }, | |
| 144 | + // 开启动画 | |
| 145 | + animation: { | |
| 146 | + type: Boolean, | |
| 147 | + default: true | |
| 148 | + }, | |
| 149 | + /* 弹出层类型,可选值; | |
| 150 | + *bottom:底部弹出层 | |
| 151 | + */ | |
| 152 | + type: { | |
| 153 | + type: String, | |
| 154 | + default: 'bottom' | |
| 155 | + }, | |
| 156 | + // maskClick | |
| 157 | + maskClick: { | |
| 158 | + type: Boolean, | |
| 159 | + default: true | |
| 160 | + }, | |
| 161 | + show: { | |
| 162 | + type: Boolean, | |
| 163 | + default: true | |
| 164 | + }, | |
| 165 | + maskBgColor: { | |
| 166 | + type: String, | |
| 167 | + default: 'rgba(0, 0, 0, 0.4)' // 背景颜色 rgba(0, 0, 0, 0.4) 为空则调用 uni.scss | |
| 168 | + }, | |
| 169 | + themeColor: { | |
| 170 | + type: String, | |
| 171 | + default: '' // 确认按钮颜色(向下兼容) | |
| 172 | + }, | |
| 173 | + cancelColor: { | |
| 174 | + type: String, | |
| 175 | + default: '' // 取消按钮颜色 | |
| 176 | + }, | |
| 177 | + confirmColor: { | |
| 178 | + type: String, | |
| 179 | + default: '' // 确认按钮颜色 | |
| 180 | + }, | |
| 181 | + fontSize: { | |
| 182 | + type: String, | |
| 183 | + default: '28rpx' // picker-item字体大小 | |
| 184 | + }, | |
| 185 | + btnFontSize: { | |
| 186 | + type: String, | |
| 187 | + default: '' // 按钮的字体大小 | |
| 188 | + }, | |
| 189 | + /* 默认值 */ | |
| 190 | + pickerValueDefault: { | |
| 191 | + type: Array, | |
| 192 | + default () { | |
| 193 | + return [0, 0, 0] | |
| 194 | + } | |
| 195 | + } | |
| 196 | + }, | |
| 197 | + data () { | |
| 198 | + return { | |
| 199 | + ani: '', | |
| 200 | + showPopup: false, | |
| 201 | + pickerValue: [0, 0, 0], | |
| 202 | + provinceDataList: [], | |
| 203 | + cityDataList: [], | |
| 204 | + areaDataList: [] | |
| 205 | + } | |
| 206 | + }, | |
| 207 | + watch: { | |
| 208 | + show (newValue) { | |
| 209 | + if (newValue) { | |
| 210 | + this.open() | |
| 211 | + } else { | |
| 212 | + this.close() | |
| 213 | + } | |
| 214 | + }, | |
| 215 | + pickerValueDefault () { | |
| 216 | + this.init() | |
| 217 | + } | |
| 218 | + }, | |
| 219 | + created () { | |
| 220 | + this.init() | |
| 221 | + }, | |
| 222 | + methods: { | |
| 223 | + init () { | |
| 224 | + this.handPickValueDefault() // 对 pickerValueDefault 做兼容处理 | |
| 225 | + this.provinceDataList = provinceData | |
| 226 | + this.cityDataList = cityData[this.pickerValueDefault[0]] | |
| 227 | + this.areaDataList = areaData[this.pickerValueDefault[0]][this.pickerValueDefault[1]] | |
| 228 | + this.pickerValue = this.pickerValueDefault | |
| 229 | + }, | |
| 230 | + handPickValueDefault () { | |
| 231 | + if (this.pickerValueDefault !== [0, 0, 0]) { | |
| 232 | + if (this.pickerValueDefault[0] > provinceData.length - 1) { | |
| 233 | + this.pickerValueDefault[0] = provinceData.length - 1 | |
| 234 | + } | |
| 235 | + if (this.pickerValueDefault[1] > cityData[this.pickerValueDefault[0]].length - 1) { | |
| 236 | + this.pickerValueDefault[1] = cityData[this.pickerValueDefault[0]].length - 1 | |
| 237 | + } | |
| 238 | + if (this.pickerValueDefault[2] > areaData[this.pickerValueDefault[0]][this.pickerValueDefault[1]].length - 1) { | |
| 239 | + this.pickerValueDefault[2] = areaData[this.pickerValueDefault[0]][this.pickerValueDefault[1]].length - 1 | |
| 240 | + } | |
| 241 | + } | |
| 242 | + }, | |
| 243 | + pickerChange (e) { | |
| 244 | + const changePickerValue = e.detail.value | |
| 245 | + if (this.pickerValue[0] !== changePickerValue[0]) { | |
| 246 | + // 第一级发生滚动 | |
| 247 | + this.cityDataList = cityData[changePickerValue[0]] | |
| 248 | + this.areaDataList = areaData[changePickerValue[0]][0] | |
| 249 | + changePickerValue[1] = 0 | |
| 250 | + changePickerValue[2] = 0 | |
| 251 | + } else if (this.pickerValue[1] !== changePickerValue[1]) { | |
| 252 | + // 第二级滚动 | |
| 253 | + this.areaDataList = areaData[changePickerValue[0]][changePickerValue[1]] | |
| 254 | + changePickerValue[2] = 0 | |
| 255 | + } | |
| 256 | + this.pickerValue = changePickerValue | |
| 257 | + this._$emit('onChange') | |
| 258 | + }, | |
| 259 | + _$emit (emitName) { | |
| 260 | + const pickObj = { | |
| 261 | + label: this._getLabel(), | |
| 262 | + value: this.pickerValue, | |
| 263 | + cityCode: this._getCityCode(), | |
| 264 | + areaCode: this._getAreaCode(), | |
| 265 | + provinceCode: this._getProvinceCode(), | |
| 266 | + labelArr: this._getLabel().split('-') | |
| 267 | + } | |
| 268 | + this.$emit(emitName, pickObj) | |
| 269 | + }, | |
| 270 | + _getLabel () { | |
| 271 | + const pcikerLabel = this.provinceDataList[this.pickerValue[0]].label + '-' + this.cityDataList[this.pickerValue[1]].label + '-' + this.areaDataList[this.pickerValue[2]].label | |
| 272 | + return pcikerLabel | |
| 273 | + }, | |
| 274 | + _getCityCode () { | |
| 275 | + return this.cityDataList[this.pickerValue[1]].value | |
| 276 | + }, | |
| 277 | + _getProvinceCode () { | |
| 278 | + return this.provinceDataList[this.pickerValue[0]].value | |
| 279 | + }, | |
| 280 | + _getAreaCode () { | |
| 281 | + return this.areaDataList[this.pickerValue[2]].value | |
| 282 | + }, | |
| 283 | + queryIndex (params = [], type = 'value') { | |
| 284 | + // params = [ 11 ,1101,110101 ]; | |
| 285 | + // 1.获取省份的index | |
| 286 | + const provinceIndex = provinceData.findIndex(res => res[type] === params[0]) | |
| 287 | + const cityIndex = cityData[provinceIndex].findIndex(res => res[type] === params[1]) | |
| 288 | + const areaIndex = areaData[provinceIndex][cityIndex].findIndex(res => res[type] === params[2]) | |
| 289 | + return { | |
| 290 | + index: [provinceIndex, cityIndex, areaIndex], | |
| 291 | + data: { | |
| 292 | + province: provinceData[provinceIndex], | |
| 293 | + city: cityData[provinceIndex][cityIndex], | |
| 294 | + area: areaData[provinceIndex][cityIndex][areaIndex] | |
| 295 | + } | |
| 296 | + } | |
| 297 | + }, | |
| 298 | + clear () {}, | |
| 299 | + hideMask () { | |
| 300 | + this._$emit('onCancel') | |
| 301 | + this.close() | |
| 302 | + }, | |
| 303 | + pickerCancel () { | |
| 304 | + this._$emit('onCancel') | |
| 305 | + this.close() | |
| 306 | + }, | |
| 307 | + pickerConfirm () { | |
| 308 | + this._$emit('onConfirm') | |
| 309 | + this.close() | |
| 310 | + }, | |
| 311 | + open () { | |
| 312 | + this.showPopup = true | |
| 313 | + this.$nextTick(() => { | |
| 314 | + setTimeout(() => { | |
| 315 | + this.ani = 'simple-' + this.type | |
| 316 | + }, 100) | |
| 317 | + }) | |
| 318 | + }, | |
| 319 | + close (type) { | |
| 320 | + if (!this.maskClick && type) return | |
| 321 | + this.ani = '' | |
| 322 | + this.$nextTick(() => { | |
| 323 | + setTimeout(() => { | |
| 324 | + this.showPopup = false | |
| 325 | + }, 300) | |
| 326 | + }) | |
| 327 | + } | |
| 328 | + } | |
| 329 | +} | |
| 277 | 330 | </script> |
| 278 | 331 | |
| 279 | 332 | <style lang="scss" scoped> |
| 280 | 333 | .simple-address { |
| 281 | - /* #ifndef APP-NVUE */ | |
| 282 | - display: flex; | |
| 283 | - /* #endif */ | |
| 284 | - flex-direction: column; | |
| 334 | + /* #ifndef APP-NVUE */ | |
| 335 | + display: flex; | |
| 336 | + /* #endif */ | |
| 337 | + flex-direction: column; | |
| 285 | 338 | } |
| 286 | 339 | |
| 287 | 340 | .simple-address-mask { |
| 288 | - position: fixed; | |
| 289 | - bottom: 0; | |
| 290 | - top: 0; | |
| 291 | - left: 0; | |
| 292 | - right: 0; | |
| 341 | + position: fixed; | |
| 342 | + bottom: 0; | |
| 343 | + top: 0; | |
| 344 | + left: 0; | |
| 345 | + right: 0; | |
| 293 | 346 | |
| 294 | - transition-property: opacity; | |
| 295 | - transition-duration: 0.3s; | |
| 296 | - opacity: 0; | |
| 297 | - /* #ifndef APP-NVUE */ | |
| 298 | - z-index: 99; | |
| 299 | - /* #endif */ | |
| 347 | + transition-property: opacity; | |
| 348 | + transition-duration: 0.3s; | |
| 349 | + opacity: 0; | |
| 350 | + /* #ifndef APP-NVUE */ | |
| 351 | + z-index: 99; | |
| 352 | + /* #endif */ | |
| 300 | 353 | } |
| 301 | 354 | |
| 302 | 355 | .mask-ani { |
| 303 | - transition-property: opacity; | |
| 304 | - transition-duration: 0.2s; | |
| 356 | + transition-property: opacity; | |
| 357 | + transition-duration: 0.2s; | |
| 305 | 358 | } |
| 306 | 359 | |
| 307 | 360 | .simple-bottom-mask { |
| 308 | - opacity: 1; | |
| 361 | + opacity: 1; | |
| 309 | 362 | } |
| 310 | 363 | |
| 311 | 364 | .simple-center-mask { |
| 312 | - opacity: 1; | |
| 365 | + opacity: 1; | |
| 313 | 366 | } |
| 314 | 367 | |
| 315 | 368 | .simple-address--fixed { |
| 316 | - position: fixed; | |
| 317 | - bottom: 0; | |
| 318 | - left: 0; | |
| 319 | - right: 0; | |
| 320 | - transition-property: transform; | |
| 321 | - transition-duration: 0.3s; | |
| 322 | - transform: translateY(460rpx); | |
| 323 | - /* #ifndef APP-NVUE */ | |
| 324 | - z-index: 99; | |
| 325 | - /* #endif */ | |
| 369 | + position: fixed; | |
| 370 | + bottom: 0; | |
| 371 | + left: 0; | |
| 372 | + right: 0; | |
| 373 | + transition-property: transform; | |
| 374 | + transition-duration: 0.3s; | |
| 375 | + transform: translateY(460rpx); | |
| 376 | + /* #ifndef APP-NVUE */ | |
| 377 | + z-index: 99; | |
| 378 | + /* #endif */ | |
| 326 | 379 | } |
| 327 | 380 | |
| 328 | 381 | .simple-address-content { |
| 329 | - background-color: #ffffff; | |
| 382 | + background-color: #ffffff; | |
| 330 | 383 | } |
| 331 | 384 | |
| 332 | 385 | .simple-content-bottom { |
| 333 | - bottom: 0; | |
| 334 | - left: 0; | |
| 335 | - right: 0; | |
| 336 | - transform: translateY(500rpx); | |
| 386 | + bottom: 0; | |
| 387 | + left: 0; | |
| 388 | + right: 0; | |
| 389 | + transform: translateY(500rpx); | |
| 337 | 390 | } |
| 338 | 391 | |
| 339 | 392 | .content-ani { |
| 340 | - transition-property: transform, opacity; | |
| 341 | - transition-duration: 0.2s; | |
| 393 | + transition-property: transform, opacity; | |
| 394 | + transition-duration: 0.2s; | |
| 342 | 395 | } |
| 343 | 396 | |
| 344 | 397 | .simple-bottom-content { |
| 345 | - transform: translateY(0); | |
| 398 | + transform: translateY(0); | |
| 346 | 399 | } |
| 347 | 400 | |
| 348 | 401 | .simple-center-content { |
| 349 | - transform: scale(1); | |
| 350 | - opacity: 1; | |
| 402 | + transform: scale(1); | |
| 403 | + opacity: 1; | |
| 351 | 404 | } |
| 352 | 405 | |
| 353 | 406 | .simple-address__header { |
| 354 | - position: relative; | |
| 355 | - /* #ifndef APP-NVUE */ | |
| 356 | - display: flex; | |
| 357 | - /* #endif */ | |
| 358 | - flex-direction: row; | |
| 359 | - flex-wrap: nowrap; | |
| 360 | - justify-content: space-between; | |
| 361 | - border-bottom-color: #f2f2f2; | |
| 362 | - border-bottom-style: solid; | |
| 363 | - border-bottom-width: 1rpx; | |
| 407 | + position: relative; | |
| 408 | + /* #ifndef APP-NVUE */ | |
| 409 | + display: flex; | |
| 410 | + /* #endif */ | |
| 411 | + flex-direction: row; | |
| 412 | + flex-wrap: nowrap; | |
| 413 | + justify-content: space-between; | |
| 414 | + border-bottom-color: #f2f2f2; | |
| 415 | + border-bottom-style: solid; | |
| 416 | + border-bottom-width: 1rpx; | |
| 364 | 417 | } |
| 365 | 418 | |
| 366 | 419 | .simple-address--fixed-top { |
| 367 | - /* #ifndef APP-NVUE */ | |
| 368 | - display: flex; | |
| 369 | - /* #endif */ | |
| 370 | - flex-direction: row; | |
| 371 | - justify-content: space-between; | |
| 372 | - border-top-color: $uni-border-color; | |
| 373 | - border-top-style: solid; | |
| 374 | - border-top-width: 1rpx; | |
| 420 | + /* #ifndef APP-NVUE */ | |
| 421 | + display: flex; | |
| 422 | + /* #endif */ | |
| 423 | + flex-direction: row; | |
| 424 | + justify-content: space-between; | |
| 425 | + border-top-color: $uni-border-color; | |
| 426 | + border-top-style: solid; | |
| 427 | + border-top-width: 1rpx; | |
| 375 | 428 | } |
| 376 | 429 | |
| 377 | 430 | .simple-address__header-btn-box { |
| 378 | - /* #ifndef APP-NVUE */ | |
| 379 | - display: flex; | |
| 380 | - /* #endif */ | |
| 381 | - flex-direction: row; | |
| 382 | - align-items: center; | |
| 383 | - justify-content: center; | |
| 384 | - height: 70rpx; | |
| 431 | + /* #ifndef APP-NVUE */ | |
| 432 | + display: flex; | |
| 433 | + /* #endif */ | |
| 434 | + flex-direction: row; | |
| 435 | + align-items: center; | |
| 436 | + justify-content: center; | |
| 437 | + height: 70rpx; | |
| 385 | 438 | } |
| 386 | 439 | |
| 387 | 440 | .simple-address__header-text { |
| 388 | - text-align: center; | |
| 389 | - font-size: $uni-font-size-base; | |
| 390 | - color: #1aad19; | |
| 391 | - line-height: 70rpx; | |
| 392 | - padding-left: 40rpx; | |
| 393 | - padding-right: 40rpx; | |
| 441 | + text-align: center; | |
| 442 | + font-size: $uni-font-size-base; | |
| 443 | + color: #1aad19; | |
| 444 | + line-height: 70rpx; | |
| 445 | + padding-left: 40rpx; | |
| 446 | + padding-right: 40rpx; | |
| 394 | 447 | } |
| 395 | 448 | |
| 396 | 449 | .simple-address__box { |
| 397 | - position: relative; | |
| 450 | + position: relative; | |
| 398 | 451 | } |
| 399 | 452 | |
| 400 | 453 | .simple-address-view { |
| 401 | - position: relative; | |
| 402 | - bottom: 0; | |
| 403 | - left: 0; | |
| 404 | - /* #ifndef APP-NVUE */ | |
| 405 | - width: 100%; | |
| 406 | - /* #endif */ | |
| 407 | - /* #ifdef APP-NVUE */ | |
| 408 | - width: 750rpx; | |
| 409 | - /* #endif */ | |
| 410 | - height: 408rpx; | |
| 411 | - background-color: rgba(255, 255, 255, 1); | |
| 454 | + position: relative; | |
| 455 | + bottom: 0; | |
| 456 | + left: 0; | |
| 457 | + /* #ifndef APP-NVUE */ | |
| 458 | + width: 100%; | |
| 459 | + /* #endif */ | |
| 460 | + /* #ifdef APP-NVUE */ | |
| 461 | + width: 750rpx; | |
| 462 | + /* #endif */ | |
| 463 | + height: 408rpx; | |
| 464 | + background-color: rgba(255, 255, 255, 1); | |
| 412 | 465 | } |
| 413 | 466 | |
| 414 | 467 | .picker-item { |
| 415 | - text-align: center; | |
| 416 | - line-height: 70rpx; | |
| 417 | - text-overflow: ellipsis; | |
| 418 | - font-size: 28rpx; | |
| 468 | + text-align: center; | |
| 469 | + line-height: 70rpx; | |
| 470 | + text-overflow: ellipsis; | |
| 471 | + font-size: 28rpx; | |
| 419 | 472 | } |
| 420 | 473 | </style> | ... | ... |
src/pages.json
| ... | ... | @@ -43,12 +43,18 @@ |
| 43 | 43 | } |
| 44 | 44 | }, |
| 45 | 45 | { |
| 46 | - "path" : "pages/addAddress/addAddress", | |
| 46 | + "path" : "pages/address/addAddress", | |
| 47 | 47 | "style" : { |
| 48 | 48 | "navigationBarTitleText" : "新增地址" |
| 49 | 49 | } |
| 50 | 50 | }, |
| 51 | 51 | { |
| 52 | + "path" : "pages/address/addressList", | |
| 53 | + "style" : { | |
| 54 | + "navigationBarTitleText" : "地址管理" | |
| 55 | + } | |
| 56 | + }, | |
| 57 | + { | |
| 52 | 58 | "path" : "pages/confirmOrder/confirmOrder", |
| 53 | 59 | "style" : { |
| 54 | 60 | "navigationBarTitleText" : "确认订单" |
| ... | ... | @@ -133,13 +139,24 @@ |
| 133 | 139 | ] |
| 134 | 140 | }, |
| 135 | 141 | "condition" : { |
| 136 | - //模式配置,仅开发期间生效 | |
| 137 | - "current" : 0, //当前激活的模式(list 的索引项) | |
| 142 | + "current" : 0, | |
| 138 | 143 | "list" : [ |
| 139 | 144 | { |
| 140 | - "name" : "", //模式名称 | |
| 141 | - "path" : "", //启动页面,必选 | |
| 142 | - "query" : "" //启动参数,在页面的onLoad函数里面得到 | |
| 145 | + "name" : "首页", | |
| 146 | + "path" : "pages/index/index", | |
| 147 | + "query" : "" | |
| 148 | + }, { | |
| 149 | + "name" : "镜片、美瞳参数选购", | |
| 150 | + "path" : "pages/purchaseLenses/purchaseLenses", | |
| 151 | + "query" : "" | |
| 152 | + }, { | |
| 153 | + "name" : "新增地址", | |
| 154 | + "path" : "pages/address/addAddress", | |
| 155 | + "query" : "" | |
| 156 | + }, { | |
| 157 | + "name" : "地址管理", | |
| 158 | + "path" : "pages/address/addressList", | |
| 159 | + "query" : "" | |
| 143 | 160 | } |
| 144 | 161 | ] |
| 145 | 162 | } | ... | ... |
src/pages/addAddress/addAddress.vue
| ... | ... | @@ -1,111 +0,0 @@ |
| 1 | -<template> | |
| 2 | - <view class="wrap"> | |
| 3 | - <view class="content"> | |
| 4 | - <view class="item,name" > | |
| 5 | - <text class="itemText">姓名</text> | |
| 6 | - <input placeholder="收货人姓名(真实姓名)" placeholder-style="color:#B8B8B8"/> | |
| 7 | - </view> | |
| 8 | - <view class="item,phone"> | |
| 9 | - <text class="itemText">电话</text> | |
| 10 | - <input placeholder="手机号" type="digit" placeholder-style="color:#B8B8B8"/> | |
| 11 | - </view> | |
| 12 | - <view class="item,area" > | |
| 13 | - <text class="itemText">地区</text> | |
| 14 | - <view class="btn" v-if="pickerText===''" @tap="openAddres">选择省/市/区</view> | |
| 15 | - <view class="btn" v-else @tap="openAddres">{{pickerText}}</view> | |
| 16 | - <simple-address ref="SimpleAddress" :pickerValueDefault="cityPickerValueDefault" @onConfirm="onConfirm" themeColor="#007AFF"></simple-address> | |
| 17 | - </view> | |
| 18 | - <view class="item,address" > | |
| 19 | - <text class="itemText">详细地址</text> | |
| 20 | - <input placeholder="街道、小区门牌等详细地址"/> | |
| 21 | - </view> | |
| 22 | - <view class="item,check" > | |
| 23 | - <text class="itemText">设为默认地址</text> | |
| 24 | - <switch checked="isDefalutAddress" color="#FF6B4A" style="transform:scale(0.6)" @change="changeDefalutAddress" /> | |
| 25 | - </view> | |
| 26 | - <input /> | |
| 27 | - </view> | |
| 28 | - <view class="button">保存并使用</view> | |
| 29 | - </view> | |
| 30 | -</template> | |
| 31 | - | |
| 32 | -<script> | |
| 33 | - import SimpleAddress from '@/components/SimpleAddress/SimpleAddress.vue'; | |
| 34 | - export default { | |
| 35 | - data() { | |
| 36 | - return { | |
| 37 | - cityPickerValueDefault: [0, 0, 1], | |
| 38 | - pickerText: '', | |
| 39 | - isDefalutAddress:true | |
| 40 | - | |
| 41 | - }; | |
| 42 | - }, | |
| 43 | - components: { | |
| 44 | - SimpleAddress | |
| 45 | - }, | |
| 46 | - methods: { | |
| 47 | - openAddres() { | |
| 48 | - this.cityPickerValueDefault = [0,0,1] | |
| 49 | - this.$refs.SimpleAddress.open(); | |
| 50 | - }, | |
| 51 | - onConfirm(e) { | |
| 52 | - this.pickerText = e.label; | |
| 53 | - }, | |
| 54 | - changeDefalutAddress(e){ | |
| 55 | - this.isDefalutAddress = e.target.value | |
| 56 | - } | |
| 57 | - } | |
| 58 | - } | |
| 59 | -</script> | |
| 60 | - | |
| 61 | -<style lang="scss"> | |
| 62 | - .wrap{ | |
| 63 | - height: 100vh; | |
| 64 | - background-color:#F2F2F2 ; | |
| 65 | - font-family: PingFangSC-Regular; | |
| 66 | - letter-spacing: -0.23px; | |
| 67 | - padding-top: 19rpx; | |
| 68 | - } | |
| 69 | - .content{ | |
| 70 | - background-color: #FFFFFF; | |
| 71 | - border-radius: 8px; | |
| 72 | - border-radius: 8px; | |
| 73 | - padding: 40rpx 56rpx; | |
| 74 | - margin-left: 40rpx; | |
| 75 | - width: 670rpx; | |
| 76 | - box-sizing: border-box; | |
| 77 | - .item{ | |
| 78 | - display: flex; | |
| 79 | - justify-content: flex-start; | |
| 80 | - font-size: 14px; | |
| 81 | - align-items: center; | |
| 82 | - height: 112rpx; | |
| 83 | - border-bottom: 1rpx solid #E9E9E9; | |
| 84 | - .itemText{ | |
| 85 | - width: 162rpx; | |
| 86 | - font-family: PingFangSC-Regular; | |
| 87 | - letter-spacing: -0.26px; | |
| 88 | - } | |
| 89 | - .btn{ | |
| 90 | - color: #333333 !important; | |
| 91 | - } | |
| 92 | - } | |
| 93 | - .check{ | |
| 94 | - justify-content: space-between; | |
| 95 | - } | |
| 96 | - } | |
| 97 | - .button{ | |
| 98 | - position: fixed; | |
| 99 | - bottom: 0; | |
| 100 | - left: 0; | |
| 101 | - height: 112rpx; | |
| 102 | - width: 100%; | |
| 103 | - background: #FF6B4A; | |
| 104 | - display: flex; | |
| 105 | - justify-content: center; | |
| 106 | - align-items: center; | |
| 107 | - font-size: 16px; | |
| 108 | - color: #FFFFFF; | |
| 109 | - letter-spacing: -0.3px; | |
| 110 | - } | |
| 111 | -</style> |
src/pages/address/addAddress.vue
| ... | ... | @@ -0,0 +1,256 @@ |
| 1 | +<template> | |
| 2 | + <form | |
| 3 | + class="wrap" | |
| 4 | + @submit="formSubmit" | |
| 5 | + @reset="formReset" | |
| 6 | + > | |
| 7 | + <view class="content"> | |
| 8 | + <view class="item,name"> | |
| 9 | + <text class="itemText">姓名</text> | |
| 10 | + <input | |
| 11 | + placeholder="收货人姓名(真实姓名)" | |
| 12 | + placeholder-style="color:#B8B8B8" | |
| 13 | + name="name" | |
| 14 | + :value="name" | |
| 15 | + /> | |
| 16 | + </view> | |
| 17 | + <view class="item,phone"> | |
| 18 | + <text class="itemText">电话</text> | |
| 19 | + <input | |
| 20 | + placeholder="手机号" | |
| 21 | + type="digit" | |
| 22 | + placeholder-style="color:#B8B8B8" | |
| 23 | + name="mobile" | |
| 24 | + v-model="mobile" | |
| 25 | + /> | |
| 26 | + </view> | |
| 27 | + <view class="item,phone"> | |
| 28 | + <text class="itemText">性别</text> | |
| 29 | + <picker | |
| 30 | + @change="bindPickerChange" | |
| 31 | + :value="index" | |
| 32 | + :range="sexArray" | |
| 33 | + name="sex" | |
| 34 | + > | |
| 35 | + <view class="uni-input">{{sexArray[sexIndex]}}</view> | |
| 36 | + </picker> | |
| 37 | + </view> | |
| 38 | + <view class="item,area"> | |
| 39 | + <text class="itemText">地区</text> | |
| 40 | + <view | |
| 41 | + class="btn" | |
| 42 | + v-if="pickerText===''" | |
| 43 | + @tap="openAddres" | |
| 44 | + >选择省/市/区</view> | |
| 45 | + <view | |
| 46 | + class="btn" | |
| 47 | + v-else | |
| 48 | + @tap="openAddres" | |
| 49 | + >{{pickerText}}</view> | |
| 50 | + <simple-address | |
| 51 | + ref="SimpleAddress" | |
| 52 | + :pickerValueDefault="cityPickerValueDefault" | |
| 53 | + @onConfirm="onConfirm" | |
| 54 | + themeColor="#007AFF" | |
| 55 | + name="address" | |
| 56 | + ></simple-address> | |
| 57 | + </view> | |
| 58 | + <view class="item,address"> | |
| 59 | + <text class="itemText">详细地址</text> | |
| 60 | + <input | |
| 61 | + placeholder="街道、小区门牌等详细地址" | |
| 62 | + name="addDetail" | |
| 63 | + :value="addDetial" | |
| 64 | + /> | |
| 65 | + </view> | |
| 66 | + <view class="item,check"> | |
| 67 | + <text class="itemText">设为默认地址</text> | |
| 68 | + <switch | |
| 69 | + :checked="isDefalutAddress" | |
| 70 | + color="#FF6B4A" | |
| 71 | + style="transform:scale(0.6)" | |
| 72 | + @change="changeDefalutAddress" | |
| 73 | + name="isDefault" | |
| 74 | + /> | |
| 75 | + </view> | |
| 76 | + <input /> | |
| 77 | + </view> | |
| 78 | + <button | |
| 79 | + form-type="submit" | |
| 80 | + class="button" | |
| 81 | + >保存并使用</button> | |
| 82 | + </form> | |
| 83 | +</template> | |
| 84 | + | |
| 85 | +<script> | |
| 86 | +import SimpleAddress from '@/components/SimpleAddress/SimpleAddress.vue' | |
| 87 | +import store from '@/store' | |
| 88 | + | |
| 89 | +export default { | |
| 90 | + data () { | |
| 91 | + return { | |
| 92 | + cityPickerValueDefault: [0, 0, 1], | |
| 93 | + pickerText: '', | |
| 94 | + isDefalutAddress: true, | |
| 95 | + sexArray: ['男', '女'], | |
| 96 | + sexIndex: 0, | |
| 97 | + flag: 0, | |
| 98 | + addId: undefined, | |
| 99 | + name: '', | |
| 100 | + mobile: '', | |
| 101 | + addDetial: '', | |
| 102 | + isDefault: 0 | |
| 103 | + } | |
| 104 | + }, | |
| 105 | + onLoad (option) { | |
| 106 | + const { addId } = option | |
| 107 | + if (addId) { | |
| 108 | + this.addId = addId | |
| 109 | + store.dispatch('address/details', { | |
| 110 | + add_id: addId | |
| 111 | + }).then(() => { | |
| 112 | + uni.setNavigationBarTitle({ | |
| 113 | + title: '编辑地址' | |
| 114 | + }) | |
| 115 | + const { name, mobile, sex, add_detail: addDetial, default: isDefault } = this.$store.state.address.details | |
| 116 | + console.log('---', this.$store.state.address.details) | |
| 117 | + const index = this.$refs.SimpleAddress.queryIndex(this.$store.state.address.details.address.split('-'), 'label') | |
| 118 | + this.cityPickerValueDefault = index.index | |
| 119 | + this.name = name | |
| 120 | + this.mobile = Number(mobile) | |
| 121 | + this.sexIndex = sex | |
| 122 | + this.addDetial = addDetial | |
| 123 | + this.isDefalutAddress = !!Number(isDefault) | |
| 124 | + console.log('this', this.cityPickerValueDefault) | |
| 125 | + }) | |
| 126 | + } | |
| 127 | + }, | |
| 128 | + components: { | |
| 129 | + SimpleAddress | |
| 130 | + }, | |
| 131 | + methods: { | |
| 132 | + openAddres () { | |
| 133 | + this.cityPickerValueDefault = [0, 0, 1] | |
| 134 | + this.$refs.SimpleAddress.open() | |
| 135 | + }, | |
| 136 | + onConfirm (e) { | |
| 137 | + this.pickerText = e.label | |
| 138 | + console.log('lll', e, this.pickerText) | |
| 139 | + }, | |
| 140 | + changeDefalutAddress (e) { | |
| 141 | + this.isDefalutAddress = e.target.value | |
| 142 | + }, | |
| 143 | + bindPickerChange (e) { | |
| 144 | + console.log('picker发送选择改变,携带值为', e.target.value) | |
| 145 | + this.sexIndex = e.target.value | |
| 146 | + }, | |
| 147 | + formValidation (formdata) { | |
| 148 | + const { name, mobile, addDetail } = formdata | |
| 149 | + this.flag = false | |
| 150 | + if (name === '') { | |
| 151 | + uni.showModal({ | |
| 152 | + content: '请输入姓名', | |
| 153 | + showCancel: false | |
| 154 | + }) | |
| 155 | + return 0 | |
| 156 | + } | |
| 157 | + if (!(/^1[3456789]\d{9}$/.test(mobile))) { | |
| 158 | + uni.showModal({ | |
| 159 | + content: '请输入正确的手机号', | |
| 160 | + showCancel: false | |
| 161 | + }) | |
| 162 | + return 0 | |
| 163 | + } | |
| 164 | + if (this.pickerText === '') { | |
| 165 | + uni.showModal({ | |
| 166 | + content: '请选择收货地区', | |
| 167 | + showCancel: false | |
| 168 | + }) | |
| 169 | + return 0 | |
| 170 | + } | |
| 171 | + if (addDetail === '') { | |
| 172 | + uni.showModal({ | |
| 173 | + content: '请输入收货详细地址', | |
| 174 | + showCancel: false | |
| 175 | + }) | |
| 176 | + return 0 | |
| 177 | + } | |
| 178 | + this.flag = true | |
| 179 | + }, | |
| 180 | + formSubmit (e) { | |
| 181 | + const formdata = e.detail.value | |
| 182 | + this.formValidation(formdata) | |
| 183 | + | |
| 184 | + const { name, mobile, addDetail, isDefault } = formdata | |
| 185 | + if (this.flag === true) { | |
| 186 | + const params = { | |
| 187 | + sex: this.sexIndex, | |
| 188 | + name, | |
| 189 | + address: this.pickerText, | |
| 190 | + mobile, | |
| 191 | + default: isDefault ? 1 : 0, | |
| 192 | + add_detail: addDetail, | |
| 193 | + longitude: 0, | |
| 194 | + latitude: 0 | |
| 195 | + } | |
| 196 | + if (this.addId) { | |
| 197 | + params.add_id = this.addId | |
| 198 | + } | |
| 199 | + store.dispatch('address/edit', params) | |
| 200 | + } | |
| 201 | + } | |
| 202 | + } | |
| 203 | +} | |
| 204 | +</script> | |
| 205 | + | |
| 206 | +<style lang="scss"> | |
| 207 | +.wrap { | |
| 208 | + height: 100vh; | |
| 209 | + background-color: #f2f2f2; | |
| 210 | + font-family: PingFangSC-Regular; | |
| 211 | + letter-spacing: -0.23px; | |
| 212 | + padding-top: 19rpx; | |
| 213 | +} | |
| 214 | +.content { | |
| 215 | + background-color: #ffffff; | |
| 216 | + border-radius: 8px; | |
| 217 | + border-radius: 8px; | |
| 218 | + padding: 40rpx 56rpx; | |
| 219 | + margin-left: 40rpx; | |
| 220 | + width: 670rpx; | |
| 221 | + box-sizing: border-box; | |
| 222 | + .item { | |
| 223 | + display: flex; | |
| 224 | + justify-content: flex-start; | |
| 225 | + font-size: 14px; | |
| 226 | + align-items: center; | |
| 227 | + height: 112rpx; | |
| 228 | + border-bottom: 1rpx solid #e9e9e9; | |
| 229 | + .itemText { | |
| 230 | + width: 162rpx; | |
| 231 | + font-family: PingFangSC-Regular; | |
| 232 | + letter-spacing: -0.26px; | |
| 233 | + } | |
| 234 | + .btn { | |
| 235 | + color: #333333 !important; | |
| 236 | + } | |
| 237 | + } | |
| 238 | + .check { | |
| 239 | + justify-content: space-between; | |
| 240 | + } | |
| 241 | +} | |
| 242 | +.button { | |
| 243 | + position: fixed; | |
| 244 | + bottom: 0; | |
| 245 | + left: 0; | |
| 246 | + height: 112rpx; | |
| 247 | + width: 100%; | |
| 248 | + background: #ff6b4a; | |
| 249 | + display: flex; | |
| 250 | + justify-content: center; | |
| 251 | + align-items: center; | |
| 252 | + font-size: 16px; | |
| 253 | + color: #ffffff; | |
| 254 | + letter-spacing: -0.3px; | |
| 255 | +} | |
| 256 | +</style> | ... | ... |
src/pages/address/addressList.vue
| ... | ... | @@ -0,0 +1,168 @@ |
| 1 | +<template> | |
| 2 | + <view class="content"> | |
| 3 | + <view | |
| 4 | + v-if="addressList.length !== 0" | |
| 5 | + class="list" | |
| 6 | + > | |
| 7 | + <view | |
| 8 | + v-for="(item, index) in addressList" | |
| 9 | + :key="index" | |
| 10 | + @tap="toEditAddress(item.add_id)" | |
| 11 | + class="order-user" | |
| 12 | + > | |
| 13 | + <view class="order-user-head"> | |
| 14 | + <view class="name"> | |
| 15 | + <view | |
| 16 | + v-if="item.default === '1'" | |
| 17 | + class="default" | |
| 18 | + ><text>默认</text></view>{{item.name}} | |
| 19 | + </view> | |
| 20 | + <text class="mobile">{{item.mobile}}</text> | |
| 21 | + </view> | |
| 22 | + <view class="order-user-body"> | |
| 23 | + <image src="../../static/myorder-paying-location.png"></image> | |
| 24 | + <text class="address">{{item.address.replace(/[-]/g,' ')}}\n{{item.add_detail}}</text> | |
| 25 | + </view> | |
| 26 | + <image | |
| 27 | + v-if="item.default === '1'" | |
| 28 | + class="arrow" | |
| 29 | + src="../../static/right.png" | |
| 30 | + ></image> | |
| 31 | + <image | |
| 32 | + v-else | |
| 33 | + class="arrow pen" | |
| 34 | + src="../../static/icon-pen.png" | |
| 35 | + ></image> | |
| 36 | + </view> | |
| 37 | + </view> | |
| 38 | + <view | |
| 39 | + v-else | |
| 40 | + class="empty" | |
| 41 | + > | |
| 42 | + 暂无收货地址 | |
| 43 | + </view> | |
| 44 | + <button class="add">新建收货地址</button> | |
| 45 | + </view> | |
| 46 | +</template> | |
| 47 | + | |
| 48 | +<script> | |
| 49 | +import store from '@/store' | |
| 50 | +export default { | |
| 51 | + data () { | |
| 52 | + return {} | |
| 53 | + }, | |
| 54 | + computed: { | |
| 55 | + addressList () { | |
| 56 | + return this.$store.state.address.list | |
| 57 | + } | |
| 58 | + }, | |
| 59 | + onLoad () { | |
| 60 | + store.dispatch('address/list') | |
| 61 | + }, | |
| 62 | + methods: { | |
| 63 | + toEditAddress (addId) { | |
| 64 | + console.log('addId', addId) | |
| 65 | + uni.navigateTo({ | |
| 66 | + url: `addAddress?addId=${addId}`, | |
| 67 | + fail: (error) => { | |
| 68 | + console.error('跳转出现错误', error) | |
| 69 | + } | |
| 70 | + }) | |
| 71 | + } | |
| 72 | + } | |
| 73 | +} | |
| 74 | +</script> | |
| 75 | + | |
| 76 | +<style lang="scss"> | |
| 77 | +.content { | |
| 78 | + min-height: 100vh; | |
| 79 | + background-color: #f2f2f2; | |
| 80 | + padding-top: 20rpx; | |
| 81 | + padding-bottom: 112rpx; | |
| 82 | + .order-user { | |
| 83 | + width: 670rpx; | |
| 84 | + height: 228rpx; | |
| 85 | + background: #ffffff; | |
| 86 | + border-radius: 14rpx; | |
| 87 | + margin: 0 auto; | |
| 88 | + margin-bottom: 20rpx; | |
| 89 | + position: relative; | |
| 90 | + .order-user-head { | |
| 91 | + display: flex; | |
| 92 | + height: 108rpx; | |
| 93 | + width: 100%; | |
| 94 | + align-items: center; | |
| 95 | + margin-left: 126rpx; | |
| 96 | + .name { | |
| 97 | + display: flex; | |
| 98 | + justify-content: space-between; | |
| 99 | + font-size: 14px; | |
| 100 | + color: #333333; | |
| 101 | + letter-spacing: -0.26px; | |
| 102 | + margin-right: 20rpx; | |
| 103 | + .default { | |
| 104 | + height: 40rpx; | |
| 105 | + width: 80rpx; | |
| 106 | + background-color: #4a90e2; | |
| 107 | + border-radius: 13px; | |
| 108 | + border-radius: 13px; | |
| 109 | + text-align: center; | |
| 110 | + margin-right: 20rpx; | |
| 111 | + text { | |
| 112 | + font-size: 12px; | |
| 113 | + color: #ffffff; | |
| 114 | + letter-spacing: -0.23px; | |
| 115 | + } | |
| 116 | + } | |
| 117 | + } | |
| 118 | + .mobile { | |
| 119 | + font-size: 14px; | |
| 120 | + color: #999999; | |
| 121 | + letter-spacing: -0.26px; | |
| 122 | + } | |
| 123 | + } | |
| 124 | + .order-user-body { | |
| 125 | + display: flex; | |
| 126 | + width: 100%; | |
| 127 | + image { | |
| 128 | + width: 24px; | |
| 129 | + height: 26px; | |
| 130 | + margin: 12rpx 32rpx 0 40rpx; | |
| 131 | + } | |
| 132 | + .address { | |
| 133 | + font-weight: bold; | |
| 134 | + font-size: 14px; | |
| 135 | + color: #333333; | |
| 136 | + letter-spacing: -0.26px; | |
| 137 | + } | |
| 138 | + } | |
| 139 | + .arrow { | |
| 140 | + width: 6px; | |
| 141 | + height: 12px; | |
| 142 | + position: absolute; | |
| 143 | + right: 40rpx; | |
| 144 | + bottom: 104rpx; | |
| 145 | + } | |
| 146 | + } | |
| 147 | + .empty { | |
| 148 | + color: #666; | |
| 149 | + font-size: 16px; | |
| 150 | + text-align: center; | |
| 151 | + padding-top: 30vh; | |
| 152 | + } | |
| 153 | + .add { | |
| 154 | + position: fixed; | |
| 155 | + bottom: 0; | |
| 156 | + left: 0; | |
| 157 | + height: 112rpx; | |
| 158 | + width: 100%; | |
| 159 | + background-color: #ff6b4a; | |
| 160 | + display: flex; | |
| 161 | + justify-content: center; | |
| 162 | + align-items: center; | |
| 163 | + font-size: 16px; | |
| 164 | + color: #ffffff; | |
| 165 | + letter-spacing: -0.3px; | |
| 166 | + } | |
| 167 | +} | |
| 168 | +</style> | ... | ... |
src/pages/detailsChoiceArgs/compoents/MyCollapse.vue
| ... | ... | @@ -8,9 +8,7 @@ |
| 8 | 8 | <view class="headRight" v-else @click="myCollapseChange(isOpen)" ></view> |
| 9 | 9 | </view> |
| 10 | 10 | <view class="body"> |
| 11 | - | |
| 12 | 11 | <block v-if="isOpen"> |
| 13 | - | |
| 14 | 12 | <view style="background-color: #FFFFFF;" class="funBox"> |
| 15 | 13 | <block v-if="title==='镜片种类'"> |
| 16 | 14 | <view class="noRange"> |
| ... | ... | @@ -30,12 +28,14 @@ |
| 30 | 28 | <view class="range" v-for="(item) in funList" :key="item.key">{{item.range}}</view> |
| 31 | 29 | <view class="noRange"> |
| 32 | 30 | <block v-for="(item) in funList" :key="item.key"> |
| 33 | - <view v-bind:class="item.isChioce?'boxChoiced':'boxChoice'" | |
| 34 | - @click="choice(item.key-1,item.isChioce)">{{item.name}}</view> | |
| 31 | + <view | |
| 32 | + v-bind:class="item.isChioce?'boxChoiced':'boxChoice'" | |
| 33 | + @click="choice(item.key ? item.key - 1 : item.mid, item.isChioce || item.checked)" | |
| 34 | + >{{item.name}}</view> | |
| 35 | 35 | </block> |
| 36 | 36 | </view> |
| 37 | 37 | |
| 38 | - <view class="range" v-for="(item) in funList2" :key="item.key">{{item.range}}</view> | |
| 38 | + <view v-if="funList2.length !== 0" class="range" v-for="(item) in funList2" :key="item.key">{{item.range}}</view> | |
| 39 | 39 | <view class="noRange" style="max-width: 624rpx"> |
| 40 | 40 | <block v-for="(item,index) in funList2" :key="item.key"> |
| 41 | 41 | <view v-bind:class="item.isChioce?'boxChoiced':'boxChoice'" |
| ... | ... | @@ -92,8 +92,8 @@ |
| 92 | 92 | "background-image: linear-gradient(180deg, #AEA096 1%, #5E3521 100%);", |
| 93 | 93 | "background-image: linear-gradient(180deg, #6F6864 1%, #352B26 100%);" |
| 94 | 94 | ], |
| 95 | - funList: this.funListProp, | |
| 96 | - funList2: this.funList2Prop, | |
| 95 | + funList: this.funListProp.attr || this.funListProp, | |
| 96 | + funList2: this.funList2Prop || [], | |
| 97 | 97 | funContent: this.funContentProp |
| 98 | 98 | }; |
| 99 | 99 | }, |
| ... | ... | @@ -102,23 +102,21 @@ |
| 102 | 102 | myCollapseChange(isopen){ |
| 103 | 103 | this.isOpen = !isopen |
| 104 | 104 | }, |
| 105 | - choice(index,isChoice){ | |
| 106 | - if(this.funList[index].type==="fun"){ | |
| 105 | + choice(index,isChoice) { | |
| 106 | + if(this.funList[index].type==="fun") { | |
| 107 | 107 | this.funList[index].isChioce = !isChoice |
| 108 | - if(!isChoice){ | |
| 108 | + if(!isChoice) { | |
| 109 | 109 | this.funContent[index] = this.funList[index].name |
| 110 | - } | |
| 111 | - else{ | |
| 110 | + } else { | |
| 112 | 111 | this.funContent[index] = '' |
| 113 | 112 | } |
| 114 | - } | |
| 115 | - else if(this.funList[index].type==="kind"){ | |
| 113 | + } else if(this.funList[index].type==="kind") { | |
| 116 | 114 | for(let i=0;i<this.funList.length;i++){ |
| 117 | 115 | this.funList[i].isChioce = false |
| 118 | 116 | } |
| 119 | 117 | this.funList[index].isChioce = !isChoice |
| 120 | 118 | this.funContent[0]=this.funList[index].name |
| 121 | - }else { | |
| 119 | + } else { | |
| 122 | 120 | for(let i=0;i<this.funList.length;i++){ |
| 123 | 121 | this.funList[i].isChioce = false |
| 124 | 122 | } |
| ... | ... | @@ -136,8 +134,7 @@ |
| 136 | 134 | } |
| 137 | 135 | this.funList2[index].isChioce = !isChoice |
| 138 | 136 | this.funContent[1] = this.funList2[index].name |
| 139 | - } | |
| 140 | - else{ | |
| 137 | + } else { | |
| 141 | 138 | for(let i=0;i<this.funList.length;i++){ |
| 142 | 139 | this.funList[i].isChioce = false |
| 143 | 140 | } | ... | ... |
src/pages/detailsChoiceArgs/detailsChoiceArgs.vue
| ... | ... | @@ -17,116 +17,126 @@ |
| 17 | 17 | </view> |
| 18 | 18 | <view class="goods-data"> |
| 19 | 19 | <view class="opCollapse"> |
| 20 | - <view class="head"> | |
| 20 | + <!-- <view class="head"> | |
| 21 | 21 | <view v-if="!opIsOpen">填写验光数据</view> |
| 22 | 22 | <view v-else></view> |
| 23 | 23 | <view class="headRighted" v-if="opIsOpen" @click="myCollapseChange(opIsOpen)"></view> |
| 24 | 24 | <view class="headRight" v-else @click="myCollapseChange(opIsOpen)" ></view> |
| 25 | - </view> | |
| 25 | + </view> --> | |
| 26 | 26 | <view class="body"> |
| 27 | 27 | <template v-if="opIsOpen"> |
| 28 | - | |
| 29 | 28 | <view class="goods-form"> |
| 30 | - <text class="p1">填写验光数据</text> | |
| 31 | - <text class="p2">没有验光数据?请到线下眼镜店验光哦~</text> | |
| 32 | - <view class="picker" > | |
| 33 | - <view class="picker-choice"> | |
| 34 | - <view class="choice-left"> | |
| 35 | - <text class="p11">{{pickerInfoList[0].nameC}}</text> | |
| 36 | - <text class="p12">{{pickerInfoList[0].nameE}}</text> | |
| 37 | - </view> | |
| 38 | - <text class="p13">左 (OD)</text> | |
| 39 | - <text class="p14">{{pickerInfoList[0].nameArray1[pickerInfoList[0].nameIndex1]}}</text> | |
| 40 | - <picker @change="bindPickerChange01" :value="pickerInfoList[0].nameIndex1" :range="pickerInfoList[0].nameArray1"> | |
| 41 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 42 | - </picker> | |
| 43 | - <text class="p13">右 (OS)</text> | |
| 44 | - <text class="p14">{{pickerInfoList[0].nameArray2[pickerInfoList[0].nameIndex2]}}</text> | |
| 45 | - <picker @change="bindPickerChange02" :value="pickerInfoList[0].nameIndex2" :range="pickerInfoList[0].nameArray2"> | |
| 46 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 47 | - </picker> | |
| 48 | - </view> | |
| 49 | - </view> | |
| 50 | - <view class="picker" > | |
| 51 | - <view class="picker-choice"> | |
| 52 | - <view class="choice-left"> | |
| 53 | - <text class="p11">{{pickerInfoList[1].nameC}}</text> | |
| 54 | - <text class="p12">{{pickerInfoList[1].nameE}}</text> | |
| 55 | - </view> | |
| 56 | - <text class="p13">左 (OD)</text> | |
| 57 | - <text class="p14">{{pickerInfoList[1].nameArray1[pickerInfoList[1].nameIndex1]}}</text> | |
| 58 | - <picker @change="bindPickerChange11" :value="pickerInfoList[1].nameIndex1" :range="pickerInfoList[1].nameArray1"> | |
| 59 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 60 | - </picker> | |
| 61 | - <text class="p13">右 (OS)</text> | |
| 62 | - <text class="p14">{{pickerInfoList[1].nameArray2[pickerInfoList[1].nameIndex2]}}</text> | |
| 63 | - <picker @change="bindPickerChange12" :value="pickerInfoList[1].nameIndex2" :range="pickerInfoList[1].nameArray2"> | |
| 64 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 65 | - </picker> | |
| 66 | - </view> | |
| 67 | - </view> | |
| 68 | - <view class="picker" > | |
| 69 | - <view class="picker-choice"> | |
| 70 | - <view class="choice-left"> | |
| 71 | - <text class="p11">{{pickerInfoList[2].nameC}}</text> | |
| 72 | - <text class="p12">{{pickerInfoList[2].nameE}}</text> | |
| 73 | - </view> | |
| 74 | - <text class="p13">左 (OD)</text> | |
| 75 | - <text class="p14">{{pickerInfoList[2].nameArray1[pickerInfoList[2].nameIndex1]}}</text> | |
| 76 | - <picker @change="bindPickerChange21" :value="pickerInfoList[2].nameIndex1" :range="pickerInfoList[2].nameArray1"> | |
| 77 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 78 | - </picker> | |
| 79 | - <text class="p13">右 (OS)</text> | |
| 80 | - <text class="p14">{{pickerInfoList[2].nameArray2[pickerInfoList[2].nameIndex2]}}</text> | |
| 81 | - <picker @change="bindPickerChange22" :value="pickerInfoList[2].nameIndex2" :range="pickerInfoList[2].nameArray2"> | |
| 82 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 83 | - </picker> | |
| 84 | - </view> | |
| 85 | - </view> | |
| 86 | - <view class="picker" > | |
| 87 | - <view class="picker-choice"> | |
| 88 | - <view class="choice-left"> | |
| 89 | - <text class="p11">{{pickerInfoList[3].nameC}}</text> | |
| 90 | - <text class="p12">{{pickerInfoList[3].nameE}}</text> | |
| 91 | - </view> | |
| 92 | - <text class="p13">左 (OD)</text> | |
| 93 | - <text class="p14">{{pickerInfoList[3].nameArray1[pickerInfoList[3].nameIndex1]}}</text> | |
| 94 | - <picker @change="bindPickerChange31" :value="pickerInfoList[3].nameIndex1" :range="pickerInfoList[3].nameArray1"> | |
| 95 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 96 | - </picker> | |
| 97 | - <text class="p13">右 (OS)</text> | |
| 98 | - <text class="p14">{{pickerInfoList[3].nameArray2[pickerInfoList[3].nameIndex2]}}</text> | |
| 99 | - <picker @change="bindPickerChange32" :value="pickerInfoList[3].nameIndex2" :range="pickerInfoList[3].nameArray2"> | |
| 100 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 101 | - </picker> | |
| 102 | - </view> | |
| 103 | - </view> | |
| 104 | - <view class="picker" > | |
| 105 | - <view class="picker-choice"> | |
| 106 | - <view class="choice-left"> | |
| 107 | - <text class="p11">{{pickerInfoList[4].nameC}}</text> | |
| 108 | - </view> | |
| 109 | - <text class="p13-date">年 (Y)</text> | |
| 110 | - <text class="p14" style="width: 34px;">{{pickerInfoList[4].nameArray1[pickerInfoList[4].nameIndex1]}}</text> | |
| 111 | - <picker @change="bindPickerChange41" :value="pickerInfoList[4].nameIndex1" :range="pickerInfoList[4].nameArray1"> | |
| 112 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 113 | - </picker> | |
| 114 | - <text class="p13-date">月 (M)</text> | |
| 115 | - <text class="p14" style="width: 30px;">{{pickerInfoList[4].nameArray2[pickerInfoList[4].nameIndex2]}}</text> | |
| 116 | - <picker @change="bindPickerChange42" :value="pickerInfoList[4].nameIndex2" :range="pickerInfoList[4].nameArray2"> | |
| 117 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 118 | - </picker> | |
| 119 | - <text class="p13-date">日 (D)</text> | |
| 120 | - <text class="p14" style="width: 30px;">{{pickerInfoList[4].nameArray3[pickerInfoList[4].nameIndex3]}}</text> | |
| 121 | - <picker @change="bindPickerChange43" :value="pickerInfoList[4].nameIndex3" :range="pickerInfoList[4].nameArray3"> | |
| 122 | - <image src="../../static/detail-tabicon.png" ></image> | |
| 123 | - </picker> | |
| 124 | - </view> | |
| 125 | - </view> | |
| 126 | - <view class="confirm"> | |
| 127 | - <image :src="tablist.confirm ? tabicon[0] : tabicon[1]" @click="changeConfirm"></image> | |
| 128 | - <text>确认以上输入信息来源于我的验光数据!</text> | |
| 129 | - </view> | |
| 29 | + <view class="data-title"> | |
| 30 | + <image src="../../static/icon-data.png" ></image> | |
| 31 | + <text class="p1">填写验光数据</text> | |
| 32 | + </view> | |
| 33 | + <text class="p2">没有验光数据?请到线下眼镜店验光哦~</text> | |
| 34 | + <view class="picker" > | |
| 35 | + <view class="picker-choice"> | |
| 36 | + <view class="choice-left"> | |
| 37 | + <text class="p11">验光单取名:</text> | |
| 38 | + </view> | |
| 39 | + <input class="choice-name uni-input" placeholder="下系" /> | |
| 40 | + </view> | |
| 41 | + </view> | |
| 42 | + <view class="picker" > | |
| 43 | + <view class="picker-choice"> | |
| 44 | + <view class="choice-left"> | |
| 45 | + <text class="p11">{{pickerInfoList[0].nameC}}</text> | |
| 46 | + <text class="p12">{{pickerInfoList[0].nameE}}</text> | |
| 47 | + </view> | |
| 48 | + <text class="p13">左 (OD)</text> | |
| 49 | + <text class="p14">{{pickerInfoList[0].nameArray1[pickerInfoList[0].nameIndex1]}}</text> | |
| 50 | + <picker @change="bindPickerChange01" :value="pickerInfoList[0].nameIndex1" :range="pickerInfoList[0].nameArray1"> | |
| 51 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 52 | + </picker> | |
| 53 | + <text class="p13">右 (OS)</text> | |
| 54 | + <text class="p14">{{pickerInfoList[0].nameArray2[pickerInfoList[0].nameIndex2]}}</text> | |
| 55 | + <picker @change="bindPickerChange02" :value="pickerInfoList[0].nameIndex2" :range="pickerInfoList[0].nameArray2"> | |
| 56 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 57 | + </picker> | |
| 58 | + </view> | |
| 59 | + </view> | |
| 60 | + <view class="picker" > | |
| 61 | + <view class="picker-choice"> | |
| 62 | + <view class="choice-left"> | |
| 63 | + <text class="p11">{{pickerInfoList[1].nameC}}</text> | |
| 64 | + <text class="p12">{{pickerInfoList[1].nameE}}</text> | |
| 65 | + </view> | |
| 66 | + <text class="p13">左 (OD)</text> | |
| 67 | + <text class="p14">{{pickerInfoList[1].nameArray1[pickerInfoList[1].nameIndex1]}}</text> | |
| 68 | + <picker @change="bindPickerChange11" :value="pickerInfoList[1].nameIndex1" :range="pickerInfoList[1].nameArray1"> | |
| 69 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 70 | + </picker> | |
| 71 | + <text class="p13">右 (OS)</text> | |
| 72 | + <text class="p14">{{pickerInfoList[1].nameArray2[pickerInfoList[1].nameIndex2]}}</text> | |
| 73 | + <picker @change="bindPickerChange12" :value="pickerInfoList[1].nameIndex2" :range="pickerInfoList[1].nameArray2"> | |
| 74 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 75 | + </picker> | |
| 76 | + </view> | |
| 77 | + </view> | |
| 78 | + <view class="picker" > | |
| 79 | + <view class="picker-choice"> | |
| 80 | + <view class="choice-left"> | |
| 81 | + <text class="p11">{{pickerInfoList[2].nameC}}</text> | |
| 82 | + <text class="p12">{{pickerInfoList[2].nameE}}</text> | |
| 83 | + </view> | |
| 84 | + <text class="p13">左 (OD)</text> | |
| 85 | + <text class="p14">{{pickerInfoList[2].nameArray1[pickerInfoList[2].nameIndex1]}}</text> | |
| 86 | + <picker @change="bindPickerChange21" :value="pickerInfoList[2].nameIndex1" :range="pickerInfoList[2].nameArray1"> | |
| 87 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 88 | + </picker> | |
| 89 | + <text class="p13">右 (OS)</text> | |
| 90 | + <text class="p14">{{pickerInfoList[2].nameArray2[pickerInfoList[2].nameIndex2]}}</text> | |
| 91 | + <picker @change="bindPickerChange22" :value="pickerInfoList[2].nameIndex2" :range="pickerInfoList[2].nameArray2"> | |
| 92 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 93 | + </picker> | |
| 94 | + </view> | |
| 95 | + </view> | |
| 96 | + <view class="picker" > | |
| 97 | + <view class="picker-choice"> | |
| 98 | + <view class="choice-left"> | |
| 99 | + <text class="p11">{{pickerInfoList[3].nameC}}</text> | |
| 100 | + <text class="p12">{{pickerInfoList[3].nameE}}</text> | |
| 101 | + </view> | |
| 102 | + <text class="p13">左 (OD)</text> | |
| 103 | + <text class="p14">{{pickerInfoList[3].nameArray1[pickerInfoList[3].nameIndex1]}}</text> | |
| 104 | + <picker @change="bindPickerChange31" :value="pickerInfoList[3].nameIndex1" :range="pickerInfoList[3].nameArray1"> | |
| 105 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 106 | + </picker> | |
| 107 | + <text class="p13">右 (OS)</text> | |
| 108 | + <text class="p14">{{pickerInfoList[3].nameArray2[pickerInfoList[3].nameIndex2]}}</text> | |
| 109 | + <picker @change="bindPickerChange32" :value="pickerInfoList[3].nameIndex2" :range="pickerInfoList[3].nameArray2"> | |
| 110 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 111 | + </picker> | |
| 112 | + </view> | |
| 113 | + </view> | |
| 114 | + <view class="picker" > | |
| 115 | + <view class="picker-choice"> | |
| 116 | + <view class="choice-left"> | |
| 117 | + <text class="p11">{{pickerInfoList[4].nameC}}</text> | |
| 118 | + </view> | |
| 119 | + <text class="p13-date">年 (Y)</text> | |
| 120 | + <text class="p14" style="width: 34px;">{{pickerInfoList[4].nameArray1[pickerInfoList[4].nameIndex1]}}</text> | |
| 121 | + <picker @change="bindPickerChange41" :value="pickerInfoList[4].nameIndex1" :range="pickerInfoList[4].nameArray1"> | |
| 122 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 123 | + </picker> | |
| 124 | + <text class="p13-date">月 (M)</text> | |
| 125 | + <text class="p14" style="width: 30px;">{{pickerInfoList[4].nameArray2[pickerInfoList[4].nameIndex2]}}</text> | |
| 126 | + <picker @change="bindPickerChange42" :value="pickerInfoList[4].nameIndex2" :range="pickerInfoList[4].nameArray2"> | |
| 127 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 128 | + </picker> | |
| 129 | + <text class="p13-date">日 (D)</text> | |
| 130 | + <text class="p14" style="width: 30px;">{{pickerInfoList[4].nameArray3[pickerInfoList[4].nameIndex3]}}</text> | |
| 131 | + <picker @change="bindPickerChange43" :value="pickerInfoList[4].nameIndex3" :range="pickerInfoList[4].nameArray3"> | |
| 132 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 133 | + </picker> | |
| 134 | + </view> | |
| 135 | + </view> | |
| 136 | + <view class="confirm"> | |
| 137 | + <image :src="tablist.confirm ? tabicon[0] : tabicon[1]" @click="changeConfirm"></image> | |
| 138 | + <text>确认以上输入信息来源于我的验光数据!</text> | |
| 139 | + </view> | |
| 130 | 140 | </view> |
| 131 | 141 | |
| 132 | 142 | </template> |
| ... | ... | @@ -156,6 +166,16 @@ |
| 156 | 166 | <MyCollapse :isOpenProps="kindIsOpen" :funListProp="kindList1" :funList2Prop="kindList2" :funContentProp="kindContent" title="镜片种类"></MyCollapse> |
| 157 | 167 | <MyCollapse :isOpenProps="maIsOpen" :funListProp="maList1" :funList2Prop="maList2" :funContentProp="maContent" title="材质选择"></MyCollapse> |
| 158 | 168 | <MyCollapse :isOpenProps="reIsOpen" :funListProp="reList1" :funList2Prop="reList2" :funContentProp="reContent" title="折射率"></MyCollapse> |
| 169 | + <view | |
| 170 | + v-for="item in attrList" | |
| 171 | + :key="item.mid" | |
| 172 | + > | |
| 173 | + <MyCollapse | |
| 174 | + :funListProp="item" | |
| 175 | + :funContentProp="reContent" | |
| 176 | + :title="item.meta_name" | |
| 177 | + /> | |
| 178 | + </view> | |
| 159 | 179 | </view> |
| 160 | 180 | <view class="submit">立即结算</view> |
| 161 | 181 | </view> |
| ... | ... | @@ -163,10 +183,12 @@ |
| 163 | 183 | |
| 164 | 184 | <script> |
| 165 | 185 | import MyCollapse from './compoents/MyCollapse.vue' |
| 186 | + import store from '@/store' | |
| 187 | + | |
| 166 | 188 | export default { |
| 167 | 189 | components: { |
| 168 | 190 | MyCollapse |
| 169 | - }, | |
| 191 | + }, | |
| 170 | 192 | data() { |
| 171 | 193 | return { |
| 172 | 194 | count:1, |
| ... | ... | @@ -183,7 +205,6 @@ |
| 183 | 205 | {"name":"抗疲劳","isChioce": false,"key":6,"type": "fun"}, |
| 184 | 206 | ], |
| 185 | 207 | funContent:[], |
| 186 | - | |
| 187 | 208 | // 镜片种类参数 |
| 188 | 209 | kindIsOpen:true, |
| 189 | 210 | kindList1: [ |
| ... | ... | @@ -197,9 +218,9 @@ |
| 197 | 218 | {"name":"JB234759","isChioce":false,key:6,"type": "kind"}, |
| 198 | 219 | {"name":"JB234759","isChioce":false,key:7,"type": "kind"}, |
| 199 | 220 | ], |
| 200 | - kindContent:[], | |
| 221 | + kindContent: [], | |
| 201 | 222 | // 材质选择 |
| 202 | - maIsOpen:true, | |
| 223 | + maIsOpen: true, | |
| 203 | 224 | maList1: [ |
| 204 | 225 | {"name":"树脂镜片","isChioce":false,key:1,"range":"0-300度","isRange":true}, |
| 205 | 226 | {"name":"特殊镜片","isChioce":false,key:2}, |
| ... | ... | @@ -208,9 +229,9 @@ |
| 208 | 229 | {"name":"玻璃镜片","isChioce":false,key:3,"range":"300-1000度","isRange":true}, |
| 209 | 230 | {"name":"玻璃镜片","isChioce":false,key:4}, |
| 210 | 231 | ], |
| 211 | - maContent:[], | |
| 232 | + maContent: [], | |
| 212 | 233 | // 折射率参数 |
| 213 | - reIsOpen:true, | |
| 234 | + reIsOpen: true, | |
| 214 | 235 | reList1: [ |
| 215 | 236 | {"name":"1.56(推荐)","isChioce":false,key:1,"range":"0-300度","isRange":true}, |
| 216 | 237 | {"name":"1.60","isChioce":false,key:2}, |
| ... | ... | @@ -225,27 +246,37 @@ |
| 225 | 246 | // 验光参数 |
| 226 | 247 | opIsOpen:true, |
| 227 | 248 | tablist: { |
| 228 | - // read: true, | |
| 229 | - // seeLong: false, | |
| 230 | - confirm: false | |
| 249 | + // read: true, | |
| 250 | + // seeLong: false, | |
| 251 | + confirm: false | |
| 231 | 252 | }, |
| 232 | 253 | tabicon:['/static/detail-button.png','/static/detail-button-unselected.png'], |
| 233 | - // 度数相关数据 | |
| 254 | + // 度数相关数据 | |
| 234 | 255 | pickerInfoList:[ |
| 235 | - {nameC:"度数",nameE:"(SPH)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:0}, | |
| 236 | - {nameC:"散光",nameE:"(CYL)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:1}, | |
| 237 | - {nameC:"散光轴位",nameE:"(AXI)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:2}, | |
| 238 | - {nameC:"双眼瞳距",nameE:"(PD)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:3}, | |
| 239 | - {nameC:"验光日期",nameE:'',nameArray1:[2017,2018,2019,2020,2021],nameIndex1:0,nameArray2:[1,2,3,4,5,6,7],nameIndex2:0,nameArray3:[1,2,3,4,5,6],nameIndex3:0} | |
| 256 | + {nameC:"度数",nameE:"(SPH)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:0}, | |
| 257 | + {nameC:"散光",nameE:"(CYL)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:1}, | |
| 258 | + {nameC:"散光轴位",nameE:"(AXI)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:2}, | |
| 259 | + {nameC:"双眼瞳距",nameE:"(PD)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:3}, | |
| 260 | + {nameC:"验光日期",nameE:'',nameArray1:[2017,2018,2019,2020,2021],nameIndex1:0,nameArray2:[1,2,3,4,5,6,7],nameIndex2:0,nameArray3:[1,2,3,4,5,6],nameIndex3:0} | |
| 240 | 261 | ], |
| 241 | 262 | |
| 242 | 263 | } |
| 243 | 264 | }, |
| 265 | + onLoad() { | |
| 266 | + store.dispatch('read/fetch', { | |
| 267 | + pid: 9, | |
| 268 | + }) | |
| 269 | + }, | |
| 270 | + computed: { | |
| 271 | + attrList() { | |
| 272 | + return this.$store.state.read.goodInfo.attrList; | |
| 273 | + } | |
| 274 | + }, | |
| 244 | 275 | methods: { |
| 245 | 276 | counter(isadd){ |
| 246 | 277 | if(isadd){ |
| 247 | 278 | this.count++ |
| 248 | - }else{ | |
| 279 | + } else { | |
| 249 | 280 | this.count <= 1? this.disabled = true:this.count-- |
| 250 | 281 | } |
| 251 | 282 | }, |
| ... | ... | @@ -254,45 +285,45 @@ |
| 254 | 285 | this.opIsOpen = !isopen |
| 255 | 286 | }, |
| 256 | 287 | changeConfirm() { |
| 257 | - this.tablist.confirm = !this.tablist.confirm | |
| 288 | + this.tablist.confirm = !this.tablist.confirm | |
| 258 | 289 | }, |
| 259 | 290 | |
| 260 | 291 | bindPickerChange01: function(e) { |
| 261 | - this.pickerInfoList[0].nameIndex1 = e.target.value | |
| 292 | + this.pickerInfoList[0].nameIndex1 = e.target.value | |
| 262 | 293 | }, |
| 263 | 294 | bindPickerChange02: function(e) { |
| 264 | - this.pickerInfoList[0].nameIndex2 = e.target.value | |
| 295 | + this.pickerInfoList[0].nameIndex2 = e.target.value | |
| 265 | 296 | }, |
| 266 | 297 | |
| 267 | 298 | bindPickerChange11: function(e) { |
| 268 | - this.pickerInfoList[1].nameIndex1 = e.target.value | |
| 299 | + this.pickerInfoList[1].nameIndex1 = e.target.value | |
| 269 | 300 | }, |
| 270 | 301 | bindPickerChange12: function(e) { |
| 271 | - this.pickerInfoList[1].nameIndex2 = e.target.value | |
| 302 | + this.pickerInfoList[1].nameIndex2 = e.target.value | |
| 272 | 303 | }, |
| 273 | 304 | |
| 274 | 305 | bindPickerChange21: function(e) { |
| 275 | - this.pickerInfoList[2].nameIndex1 = e.target.value | |
| 306 | + this.pickerInfoList[2].nameIndex1 = e.target.value | |
| 276 | 307 | }, |
| 277 | 308 | bindPickerChange22: function(e) { |
| 278 | - this.pickerInfoList[2].nameIndex2 = e.target.value | |
| 309 | + this.pickerInfoList[2].nameIndex2 = e.target.value | |
| 279 | 310 | }, |
| 280 | 311 | |
| 281 | 312 | bindPickerChange31: function(e) { |
| 282 | - this.pickerInfoList[3].nameIndex1 = e.target.value | |
| 313 | + this.pickerInfoList[3].nameIndex1 = e.target.value | |
| 283 | 314 | }, |
| 284 | 315 | bindPickerChange32: function(e) { |
| 285 | - this.pickerInfoList[3].nameIndex2 = e.target.value | |
| 316 | + this.pickerInfoList[3].nameIndex2 = e.target.value | |
| 286 | 317 | }, |
| 287 | 318 | |
| 288 | 319 | bindPickerChange41: function(e) { |
| 289 | - this.pickerInfoList[4].nameIndex1 = e.target.value | |
| 320 | + this.pickerInfoList[4].nameIndex1 = e.target.value | |
| 290 | 321 | }, |
| 291 | 322 | bindPickerChange42: function(e) { |
| 292 | - this.pickerInfoList[4].nameIndex2 = e.target.value | |
| 323 | + this.pickerInfoList[4].nameIndex2 = e.target.value | |
| 293 | 324 | }, |
| 294 | 325 | bindPickerChange43: function(e) { |
| 295 | - this.pickerInfoList[4].nameIndex3 = e.target.value | |
| 326 | + this.pickerInfoList[4].nameIndex3 = e.target.value | |
| 296 | 327 | }, |
| 297 | 328 | } |
| 298 | 329 | } |
| ... | ... | @@ -306,7 +337,9 @@ |
| 306 | 337 | flex-direction: column; |
| 307 | 338 | align-items: center; |
| 308 | 339 | } |
| 309 | - | |
| 340 | + .choice-name { | |
| 341 | + border-bottom: 1px solid #CFCFCF; | |
| 342 | + } | |
| 310 | 343 | .goods-info{ |
| 311 | 344 | width: 100%; |
| 312 | 345 | height: 272rpx; |
| ... | ... | @@ -459,98 +492,97 @@ |
| 459 | 492 | align-items: center; |
| 460 | 493 | justify-content: center; |
| 461 | 494 | background-color: #fff; |
| 462 | - width: 100%; | |
| 463 | - | |
| 495 | + width: 100%; | |
| 464 | 496 | .p1 { |
| 465 | - font-size: 16px; | |
| 466 | - color: #333333; | |
| 467 | - letter-spacing: -0.3px; | |
| 468 | - text-align: justify; | |
| 469 | - line-height: 24px; | |
| 470 | - margin: 4px 0; | |
| 497 | + font-size: 16px; | |
| 498 | + color: #333333; | |
| 499 | + letter-spacing: -0.3px; | |
| 500 | + text-align: justify; | |
| 501 | + line-height: 24px; | |
| 502 | + margin: 4px 0; | |
| 471 | 503 | |
| 472 | - } | |
| 473 | - .p2 { | |
| 474 | - font-size: 12px; | |
| 475 | - color: #999999; | |
| 476 | - letter-spacing: -0.23px; | |
| 477 | - margin-bottom: 18rpx; | |
| 478 | - } | |
| 479 | - image{ | |
| 480 | - width: 28rpx; | |
| 481 | - height: 26rpx; | |
| 482 | - } | |
| 483 | - .confirm { | |
| 484 | - display: flex; | |
| 485 | - align-items: center; | |
| 486 | - font-size: 12px; | |
| 487 | - color: #666666; | |
| 488 | - letter-spacing: -0.23px; | |
| 489 | - width: 684rpx; | |
| 490 | - image{ | |
| 491 | - margin-right:25rpx; | |
| 492 | - } | |
| 493 | - } | |
| 494 | - .picker{ | |
| 495 | - display: flex; | |
| 496 | - flex-direction: column; | |
| 497 | - justify-content: center; | |
| 498 | - align-items: center; | |
| 499 | - width: 100%; | |
| 500 | - image{ | |
| 501 | - width: 10px; | |
| 502 | - height: 10px; | |
| 503 | - margin-right: 5px; | |
| 504 | - } | |
| 505 | - .picker-choice{ | |
| 504 | + } | |
| 505 | + .p2 { | |
| 506 | + font-size: 12px; | |
| 507 | + color: #999999; | |
| 508 | + letter-spacing: -0.23px; | |
| 509 | + margin-bottom: 18rpx; | |
| 510 | + } | |
| 511 | + image{ | |
| 512 | + width: 28rpx; | |
| 513 | + height: 26rpx; | |
| 514 | + } | |
| 515 | + .confirm { | |
| 516 | + display: flex; | |
| 517 | + align-items: center; | |
| 518 | + font-size: 12px; | |
| 519 | + color: #666666; | |
| 520 | + letter-spacing: -0.23px; | |
| 521 | + width: 684rpx; | |
| 522 | + image{ | |
| 523 | + margin-right:25rpx; | |
| 524 | + } | |
| 525 | + } | |
| 526 | + .picker{ | |
| 506 | 527 | display: flex; |
| 507 | - width: 684rpx; | |
| 528 | + flex-direction: column; | |
| 529 | + justify-content: center; | |
| 508 | 530 | align-items: center; |
| 509 | - margin-bottom: 40rpx; | |
| 510 | - .choice-left{ | |
| 511 | - width: 210rpx; | |
| 512 | - .p11 { | |
| 513 | - font-size: 14px; | |
| 514 | - color: #333333; | |
| 515 | - letter-spacing: -0.26px; | |
| 516 | - text-align: justify; | |
| 517 | - line-height: 24px; | |
| 518 | - // margin-right: 10px; | |
| 531 | + width: 100%; | |
| 532 | + image{ | |
| 533 | + width: 10px; | |
| 534 | + height: 10px; | |
| 535 | + margin-right: 5px; | |
| 536 | + } | |
| 537 | + .picker-choice{ | |
| 538 | + display: flex; | |
| 539 | + width: 684rpx; | |
| 540 | + align-items: center; | |
| 541 | + margin-bottom: 40rpx; | |
| 542 | + .choice-left{ | |
| 543 | + width: 210rpx; | |
| 544 | + .p11 { | |
| 545 | + font-size: 14px; | |
| 546 | + color: #333333; | |
| 547 | + letter-spacing: -0.26px; | |
| 548 | + text-align: justify; | |
| 549 | + line-height: 24px; | |
| 550 | + // margin-right: 10px; | |
| 551 | + } | |
| 552 | + .p12 { | |
| 553 | + font-size: 10px; | |
| 554 | + color: #3F3F3F; | |
| 555 | + letter-spacing: -0.19px; | |
| 556 | + text-align: justify; | |
| 557 | + line-height: 24px; | |
| 558 | + } | |
| 559 | + | |
| 560 | + | |
| 519 | 561 | } |
| 520 | - .p12 { | |
| 562 | + .p13 { | |
| 521 | 563 | font-size: 10px; |
| 522 | - color: #3F3F3F; | |
| 564 | + color: #999999; | |
| 523 | 565 | letter-spacing: -0.19px; |
| 524 | - text-align: justify; | |
| 525 | - line-height: 24px; | |
| 566 | + margin-right: 10px; | |
| 526 | 567 | } |
| 527 | - | |
| 528 | - | |
| 529 | - } | |
| 530 | - .p13 { | |
| 531 | - font-size: 10px; | |
| 532 | - color: #999999; | |
| 533 | - letter-spacing: -0.19px; | |
| 534 | - margin-right: 10px; | |
| 535 | - } | |
| 536 | - .p13-date { | |
| 537 | - font-size: 10px; | |
| 538 | - color: #999999; | |
| 539 | - letter-spacing: -0.19px; | |
| 540 | - margin-right: 5px; | |
| 541 | - } | |
| 542 | - .p14 { | |
| 543 | - font-size: 14px; | |
| 544 | - color: #666666; | |
| 545 | - letter-spacing: -0.26px; | |
| 546 | - text-align: center; | |
| 547 | - width: 124rpx; | |
| 548 | - border-bottom: 1px solid #CFCFCF; | |
| 568 | + .p13-date { | |
| 569 | + font-size: 10px; | |
| 570 | + color: #999999; | |
| 571 | + letter-spacing: -0.19px; | |
| 572 | + margin-right: 5px; | |
| 573 | + } | |
| 574 | + .p14 { | |
| 575 | + font-size: 14px; | |
| 576 | + color: #666666; | |
| 577 | + letter-spacing: -0.26px; | |
| 578 | + text-align: center; | |
| 579 | + width: 124rpx; | |
| 580 | + border-bottom: 1px solid #CFCFCF; | |
| 581 | + } | |
| 582 | + | |
| 549 | 583 | } |
| 550 | - | |
| 551 | 584 | } |
| 552 | 585 | } |
| 553 | - } | |
| 554 | 586 | |
| 555 | 587 | .submit{ |
| 556 | 588 | width: 100%; | ... | ... |
src/pages/index/index.vue
| ... | ... | @@ -149,7 +149,6 @@ export default { |
| 149 | 149 | } |
| 150 | 150 | }, |
| 151 | 151 | onLoad() { |
| 152 | - console.log('onload') | |
| 153 | 152 | store.dispatch('index/category'); |
| 154 | 153 | // this.getList(); |
| 155 | 154 | store.dispatch('index/list'); |
| ... | ... | @@ -181,7 +180,6 @@ export default { |
| 181 | 180 | searchKey(e) { |
| 182 | 181 | const { value: keyword } = e.detail; |
| 183 | 182 | this.keyWords = keyword; |
| 184 | - console.log('e', e, keyword); | |
| 185 | 183 | store.dispatch('index/search', { |
| 186 | 184 | params: {}, |
| 187 | 185 | keyword, |
| ... | ... | @@ -189,16 +187,15 @@ export default { |
| 189 | 187 | }, |
| 190 | 188 | //接收菜单结果 |
| 191 | 189 | search(e) { |
| 192 | - console.log("修改菜单-----", e, this.categoryList); | |
| 193 | 190 | const { on, value, index } = e; |
| 194 | 191 | let params = {} |
| 195 | 192 | if(on[0] === 1) { |
| 193 | + // 若点击全部 | |
| 196 | 194 | this.searchText = ''; |
| 197 | 195 | store.dispatch('index/list'); |
| 198 | 196 | } else { |
| 199 | 197 | for(let i = 1; i<=on.length; i++){ // on[0]是全部 |
| 200 | 198 | if(on[i] === 1) { // 若该选项被选中 |
| 201 | - console.log('---', `${this.categoryList[i].value}`); | |
| 202 | 199 | params[`${this.categoryList[i].value}`] = value[i][0]; |
| 203 | 200 | } |
| 204 | 201 | } | ... | ... |
src/pages/myOrderPaying/myOrderPaying.vue
| 1 | 1 | <template> |
| 2 | 2 | |
| 3 | - <view class="content"> | |
| 4 | - <view class="order-hr"></view> | |
| 5 | - <view class="order-time"> | |
| 6 | - <text>请在</text> | |
| 7 | - <!-- <text class="p2"></text> --> | |
| 8 | - <uni-countdown color="#EC5D3B" splitor-color="#EC5D3B" :show-day="false" | |
| 9 | - :hour="0" :minute="59" :second="58" style="margin: 36rpx 20rpx 0 20rpx"></uni-countdown> | |
| 10 | - <text>内完成付款</text> | |
| 11 | - </view> | |
| 12 | - <view class="order"> | |
| 13 | - <view class="order-user"> | |
| 14 | - <view class="order-user-head"> | |
| 15 | - <text class="p1">钱大大</text> | |
| 16 | - <text class="p2">18823749843</text> | |
| 17 | - </view> | |
| 18 | - <view class="order-user-body"> | |
| 19 | - <image src="../../static/myorder-paying-location.png"></image> | |
| 20 | - <text class="p3">四川省 德阳市 旌阳区\n黄河西路碧桂园3期 4单元 202</text> | |
| 21 | - </view> | |
| 22 | - </view> | |
| 23 | - <view class="order-info"> | |
| 24 | - <view class="order-info-head"> | |
| 25 | - <image src="../../static/myorder-paying-pic.png"></image> | |
| 26 | - <view class="order-info-head-r"> | |
| 27 | - <text class="p1">眼镜名称眼镜名称眼镜名称眼镜名称…</text> | |
| 28 | - <view class="p2" style="margin: 0;"> | |
| 29 | - 规格:玫瑰金 / 钛合金 / 防日光防紫外线 / 超薄超轻 | |
| 30 | - <!-- <view class="arrow"></view> --> | |
| 31 | - </view> | |
| 32 | - <text class="p3"><span>¥180</span><span class="p4">X1</span></text> | |
| 33 | - </view> | |
| 34 | - </view> | |
| 35 | -<!-- <view class="order-info-goodsnum"> | |
| 3 | + <view class="content"> | |
| 4 | + <view class="order-hr"></view> | |
| 5 | + <view class="order-time"> | |
| 6 | + <text>请在</text> | |
| 7 | + <!-- <text class="p2"></text> --> | |
| 8 | + <uni-countdown | |
| 9 | + color="#EC5D3B" | |
| 10 | + splitor-color="#EC5D3B" | |
| 11 | + :show-day="false" | |
| 12 | + :hour="0" | |
| 13 | + :minute="59" | |
| 14 | + :second="58" | |
| 15 | + style="margin: 36rpx 20rpx 0 20rpx" | |
| 16 | + ></uni-countdown> | |
| 17 | + <text>内完成付款</text> | |
| 18 | + </view> | |
| 19 | + <view class="order"> | |
| 20 | + <view class="order-user"> | |
| 21 | + <view class="order-user-head"> | |
| 22 | + <text class="p1">钱大大</text> | |
| 23 | + <text class="p2">18823749843</text> | |
| 24 | + </view> | |
| 25 | + <view class="order-user-body"> | |
| 26 | + <image src="../../static/myorder-paying-location.png"></image> | |
| 27 | + <text class="p3">四川省 德阳市 旌阳区\n黄河西路碧桂园3期 4单元 202</text> | |
| 28 | + </view> | |
| 29 | + </view> | |
| 30 | + <view class="order-info"> | |
| 31 | + <view class="order-info-head"> | |
| 32 | + <image src="../../static/myorder-paying-pic.png"></image> | |
| 33 | + <view class="order-info-head-r"> | |
| 34 | + <text class="p1">眼镜名称眼镜名称眼镜名称眼镜名称…</text> | |
| 35 | + <view | |
| 36 | + class="p2" | |
| 37 | + style="margin: 0;" | |
| 38 | + > | |
| 39 | + 规格:玫瑰金 / 钛合金 / 防日光防紫外线 / 超薄超轻 | |
| 40 | + <!-- <view class="arrow"></view> --> | |
| 41 | + </view> | |
| 42 | + <text class="p3"><span>¥180</span><span class="p4">X1</span></text> | |
| 43 | + </view> | |
| 44 | + </view> | |
| 45 | + <!-- <view class="order-info-goodsnum"> | |
| 36 | 46 | <text>X1</text> |
| 37 | 47 | </view> --> |
| 38 | - <text class="order-info-freight"> | |
| 39 | - <text class="p1">运费</text> | |
| 40 | - <text class="p2">0.00</text> | |
| 41 | - </text> | |
| 42 | - <text class="order-info-discount"> | |
| 43 | - <text class="p1">优惠</text> | |
| 44 | - <text class="p2">-¥70.00</text> | |
| 45 | - </text> | |
| 46 | - <text class="order-info-price"> | |
| 47 | - <text class="p1">实付</text> | |
| 48 | - <text class="p2">¥110</text> | |
| 49 | - </text> | |
| 50 | - <text class="order-info-num"> | |
| 51 | - <text>订单号:203486795859605849</text> | |
| 52 | - </text> | |
| 53 | - <text class="order-info-time"> | |
| 54 | - <text>下单时间:2020-10-22 14:32:42</text> | |
| 55 | - </text> | |
| 56 | - <view class="order-info-hr"></view> | |
| 57 | - <view class="order-info-contact"> | |
| 58 | - <image src="../../static/myorder-paying-contact.png"></image> | |
| 59 | - <text>联系客服</text> | |
| 60 | - </view> | |
| 61 | - </view> | |
| 62 | - </view> | |
| 63 | - <view class="order-confim"> | |
| 64 | - <button class="b1">取消订单</button> | |
| 65 | - <button class="b2">立即支付</button> | |
| 66 | - </view> | |
| 67 | - </view> | |
| 48 | + <text class="order-info-freight"> | |
| 49 | + <text class="p1">运费</text> | |
| 50 | + <text class="p2">0.00</text> | |
| 51 | + </text> | |
| 52 | + <text class="order-info-discount"> | |
| 53 | + <text class="p1">优惠</text> | |
| 54 | + <text class="p2">-¥70.00</text> | |
| 55 | + </text> | |
| 56 | + <text class="order-info-price"> | |
| 57 | + <text class="p1">实付</text> | |
| 58 | + <text class="p2">¥110</text> | |
| 59 | + </text> | |
| 60 | + <text class="order-info-num"> | |
| 61 | + <text>订单号:203486795859605849</text> | |
| 62 | + </text> | |
| 63 | + <text class="order-info-time"> | |
| 64 | + <text>下单时间:2020-10-22 14:32:42</text> | |
| 65 | + </text> | |
| 66 | + <view class="order-info-hr"></view> | |
| 67 | + <view class="order-info-contact"> | |
| 68 | + <image src="../../static/myorder-paying-contact.png"></image> | |
| 69 | + <text>联系客服</text> | |
| 70 | + </view> | |
| 71 | + </view> | |
| 72 | + </view> | |
| 73 | + <view class="order-confim"> | |
| 74 | + <button class="b1">取消订单</button> | |
| 75 | + <button class="b2">立即支付</button> | |
| 76 | + </view> | |
| 77 | + </view> | |
| 68 | 78 | </template> |
| 69 | 79 | |
| 70 | 80 | <script> |
| 71 | - import UniCountdown from '../../components/UniCountdown/UniCountdown.vue' | |
| 72 | - export default { | |
| 73 | - components: { | |
| 74 | - UniCountdown | |
| 75 | - }, | |
| 76 | - data() { | |
| 77 | - return { | |
| 78 | - scrollHeight: false, | |
| 79 | - } | |
| 80 | - }, | |
| 81 | - methods: { | |
| 82 | - | |
| 83 | - } | |
| 84 | - } | |
| 81 | +import UniCountdown from '../../components/UniCountdown/UniCountdown.vue' | |
| 82 | +export default { | |
| 83 | + components: { | |
| 84 | + UniCountdown | |
| 85 | + }, | |
| 86 | + data () { | |
| 87 | + return { | |
| 88 | + scrollHeight: false | |
| 89 | + } | |
| 90 | + }, | |
| 91 | + methods: { | |
| 92 | + | |
| 93 | + } | |
| 94 | +} | |
| 85 | 95 | </script> |
| 86 | 96 | |
| 87 | 97 | <style lang="scss" scoped> |
| 88 | - .content{ | |
| 89 | - display: flex; | |
| 90 | - flex-direction: column; | |
| 91 | - justify-content: center; | |
| 92 | - align-items: center; | |
| 93 | - background-color: #f2f2f2; | |
| 94 | - } | |
| 95 | - | |
| 96 | - | |
| 97 | - .order { | |
| 98 | - min-height: 1196rpx; | |
| 99 | - margin-bottom: 112rpx; | |
| 100 | - background: #F2F2F2; | |
| 101 | - } | |
| 102 | - .order-hr { | |
| 103 | - width: 100%; | |
| 104 | - height: 1px; | |
| 105 | - background-color: #E9E9E9; | |
| 106 | - } | |
| 107 | - .order-time { | |
| 108 | - width: 100%; | |
| 109 | - height: 140rpx; | |
| 110 | - background-color: #fff; | |
| 111 | - display: flex; | |
| 112 | - justify-content: center; | |
| 113 | - text { | |
| 114 | - // font-family: PingFangSC-Regular; | |
| 115 | - margin-top: 48rpx; | |
| 116 | - font-size: 14px; | |
| 117 | - color: #333333; | |
| 118 | - letter-spacing: -0.26px; | |
| 119 | - } | |
| 120 | - .p2 { | |
| 121 | - // font-family: DINAlternate-Bold; | |
| 122 | - margin: 42rpx 20rpx 0 20rpx; | |
| 123 | - font-size: 18px; | |
| 124 | - color: #EC5D3B; | |
| 125 | - letter-spacing: -0.34px; | |
| 126 | - } | |
| 127 | - } | |
| 128 | - | |
| 129 | - .order-user { | |
| 130 | - width: 670rpx; | |
| 131 | - height: 228rpx; | |
| 132 | - background: #FFFFFF; | |
| 133 | - border-radius: 14rpx; | |
| 134 | - margin: 0 auto; | |
| 135 | - margin-top: 20rpx; | |
| 136 | - margin-bottom: 20rpx; | |
| 137 | - .order-user-head { | |
| 138 | - display: flex; | |
| 139 | - height: 108rpx; | |
| 140 | - width: 100%; | |
| 141 | - align-items: center; | |
| 142 | - margin-left: 126rpx; | |
| 143 | - .p1 { | |
| 144 | - // font-family: PingFangSC-Regular; | |
| 145 | - font-size: 14px; | |
| 146 | - color: #333333; | |
| 147 | - letter-spacing: -0.26px; | |
| 148 | - margin-right: 20rpx; | |
| 149 | - } | |
| 150 | - .p2 { | |
| 151 | - // font-family: PingFangSC-Regular; | |
| 152 | - font-size: 14px; | |
| 153 | - color: #999999; | |
| 154 | - letter-spacing: -0.26px; | |
| 155 | - } | |
| 156 | - } | |
| 157 | - .order-user-body { | |
| 158 | - display: flex; | |
| 159 | - width: 100%; | |
| 160 | - image{ | |
| 161 | - width: 24px; | |
| 162 | - height: 26px; | |
| 163 | - margin: 12rpx 32rpx 0 40rpx; | |
| 164 | - } | |
| 165 | - .p3 { | |
| 166 | - // font-family: PingFangSC-Semibold; | |
| 167 | - font-size: 14px; | |
| 168 | - color: #333333; | |
| 169 | - letter-spacing: -0.26px; | |
| 170 | - } | |
| 171 | - } | |
| 172 | - } | |
| 173 | - | |
| 174 | - .order-info { | |
| 175 | - width: 670rpx; | |
| 176 | - background-color: #fff; | |
| 177 | - box-shadow: 0 0 20rpx 0 rgba(177,128,128,0.06); | |
| 178 | - border-radius: 16rpx; | |
| 179 | - margin: 0 auto; | |
| 180 | - view{ | |
| 181 | - margin-left: 40rpx; | |
| 182 | - } | |
| 183 | - text{ | |
| 184 | - font-size: 14px; | |
| 185 | - } | |
| 186 | - .order-info-head { | |
| 187 | - display: flex; | |
| 188 | - padding-top: 40rpx; | |
| 189 | - image{ | |
| 190 | - height: 188rpx; | |
| 191 | - width: 188rpx; | |
| 192 | - } | |
| 193 | - .order-info-head-r{ | |
| 194 | - margin: 0; | |
| 195 | - width: 368rpx; | |
| 196 | - margin-left: 24rpx; | |
| 197 | - // margin-top: 40rpx; | |
| 198 | - text{ | |
| 199 | - display: block; | |
| 200 | - } | |
| 201 | - // .arrow{ | |
| 202 | - // width: 0; | |
| 203 | - // height: 0; | |
| 204 | - // border-left: 5px transparent; | |
| 205 | - // border-right: 5px transparent; | |
| 206 | - // border-top: 5px #979797; | |
| 207 | - // border-bottom: 0 transparent; | |
| 208 | - // border-style: solid; | |
| 209 | - // position: relative; | |
| 210 | - // // transform: scaleY(-1); | |
| 211 | - // } | |
| 212 | - // .arrow::after{ | |
| 213 | - // content: ''; | |
| 214 | - // position: absolute; | |
| 215 | - // top: -6.5px; | |
| 216 | - // left: -5px; | |
| 217 | - // border-left: 5px transparent; | |
| 218 | - // border-right: 5px transparent; | |
| 219 | - // border-top: 5px #FFFFFF; | |
| 220 | - // border-bottom: 0 transparent; | |
| 221 | - // border-style: solid; | |
| 222 | - // } | |
| 223 | - .p1 { | |
| 224 | - min-height: 40px; | |
| 225 | - // font-family: PingFangSC-Regular; | |
| 226 | - font-size: 14px; | |
| 227 | - color: #333333; | |
| 228 | - letter-spacing: -0.26px; | |
| 229 | - line-height: 18px; | |
| 230 | - // line-height: 20px; | |
| 231 | - } | |
| 232 | - .p2 { | |
| 233 | - height: 34px; | |
| 234 | - padding: 1px 0 3px 0; | |
| 235 | - // font-family: PingFangSC-Regular; | |
| 236 | - font-size: 12px; | |
| 237 | - color: #999999; | |
| 238 | - letter-spacing: -0.23px; | |
| 239 | - } | |
| 240 | - .p3 { | |
| 241 | - height: 20px; | |
| 242 | - // font-family: PingFangSC-Regular; | |
| 243 | - font-size: 14px; | |
| 244 | - color: #FF6B4A; | |
| 245 | - letter-spacing: -0.26px; | |
| 246 | - } | |
| 247 | - .p4{ | |
| 248 | - font-size: 12px; | |
| 249 | - color: #999999; | |
| 250 | - letter-spacing: -0.23px; | |
| 251 | - margin-left: 10px; | |
| 252 | - } | |
| 253 | - } | |
| 98 | +.content { | |
| 99 | + display: flex; | |
| 100 | + flex-direction: column; | |
| 101 | + justify-content: center; | |
| 102 | + align-items: center; | |
| 103 | + background-color: #f2f2f2; | |
| 104 | +} | |
| 105 | + | |
| 106 | +.order { | |
| 107 | + min-height: 1196rpx; | |
| 108 | + margin-bottom: 112rpx; | |
| 109 | + background: #f2f2f2; | |
| 110 | +} | |
| 111 | +.order-hr { | |
| 112 | + width: 100%; | |
| 113 | + height: 1px; | |
| 114 | + background-color: #e9e9e9; | |
| 115 | +} | |
| 116 | +.order-time { | |
| 117 | + width: 100%; | |
| 118 | + height: 140rpx; | |
| 119 | + background-color: #fff; | |
| 120 | + display: flex; | |
| 121 | + justify-content: center; | |
| 122 | + text { | |
| 123 | + // font-family: PingFangSC-Regular; | |
| 124 | + margin-top: 48rpx; | |
| 125 | + font-size: 14px; | |
| 126 | + color: #333333; | |
| 127 | + letter-spacing: -0.26px; | |
| 128 | + } | |
| 129 | + .p2 { | |
| 130 | + // font-family: DINAlternate-Bold; | |
| 131 | + margin: 42rpx 20rpx 0 20rpx; | |
| 132 | + font-size: 18px; | |
| 133 | + color: #ec5d3b; | |
| 134 | + letter-spacing: -0.34px; | |
| 135 | + } | |
| 136 | +} | |
| 137 | + | |
| 138 | +.order-user { | |
| 139 | + width: 670rpx; | |
| 140 | + height: 228rpx; | |
| 141 | + background: #ffffff; | |
| 142 | + border-radius: 14rpx; | |
| 143 | + margin: 0 auto; | |
| 144 | + margin-top: 20rpx; | |
| 145 | + margin-bottom: 20rpx; | |
| 146 | + .order-user-head { | |
| 147 | + display: flex; | |
| 148 | + height: 108rpx; | |
| 149 | + width: 100%; | |
| 150 | + align-items: center; | |
| 151 | + margin-left: 126rpx; | |
| 152 | + .p1 { | |
| 153 | + // font-family: PingFangSC-Regular; | |
| 154 | + font-size: 14px; | |
| 155 | + color: #333333; | |
| 156 | + letter-spacing: -0.26px; | |
| 157 | + margin-right: 20rpx; | |
| 158 | + } | |
| 159 | + .p2 { | |
| 160 | + // font-family: PingFangSC-Regular; | |
| 161 | + font-size: 14px; | |
| 162 | + color: #999999; | |
| 163 | + letter-spacing: -0.26px; | |
| 164 | + } | |
| 165 | + } | |
| 166 | + .order-user-body { | |
| 167 | + display: flex; | |
| 168 | + width: 100%; | |
| 169 | + image { | |
| 170 | + width: 24px; | |
| 171 | + height: 26px; | |
| 172 | + margin: 12rpx 32rpx 0 40rpx; | |
| 173 | + } | |
| 174 | + .p3 { | |
| 175 | + // font-family: PingFangSC-Semibold; | |
| 176 | + font-size: 14px; | |
| 177 | + color: #333333; | |
| 178 | + letter-spacing: -0.26px; | |
| 179 | + } | |
| 180 | + } | |
| 181 | +} | |
| 182 | + | |
| 183 | +.order-info { | |
| 184 | + width: 670rpx; | |
| 185 | + background-color: #fff; | |
| 186 | + box-shadow: 0 0 20rpx 0 rgba(177, 128, 128, 0.06); | |
| 187 | + border-radius: 16rpx; | |
| 188 | + margin: 0 auto; | |
| 189 | + view { | |
| 190 | + margin-left: 40rpx; | |
| 191 | + } | |
| 192 | + text { | |
| 193 | + font-size: 14px; | |
| 194 | + } | |
| 195 | + .order-info-head { | |
| 196 | + display: flex; | |
| 197 | + padding-top: 40rpx; | |
| 198 | + image { | |
| 199 | + height: 188rpx; | |
| 200 | + width: 188rpx; | |
| 201 | + } | |
| 202 | + .order-info-head-r { | |
| 203 | + margin: 0; | |
| 204 | + width: 368rpx; | |
| 205 | + margin-left: 24rpx; | |
| 206 | + // margin-top: 40rpx; | |
| 207 | + text { | |
| 208 | + display: block; | |
| 209 | + } | |
| 210 | + // .arrow{ | |
| 211 | + // width: 0; | |
| 212 | + // height: 0; | |
| 213 | + // border-left: 5px transparent; | |
| 214 | + // border-right: 5px transparent; | |
| 215 | + // border-top: 5px #979797; | |
| 216 | + // border-bottom: 0 transparent; | |
| 217 | + // border-style: solid; | |
| 218 | + // position: relative; | |
| 219 | + // // transform: scaleY(-1); | |
| 220 | + // } | |
| 221 | + // .arrow::after{ | |
| 222 | + // content: ''; | |
| 223 | + // position: absolute; | |
| 224 | + // top: -6.5px; | |
| 225 | + // left: -5px; | |
| 226 | + // border-left: 5px transparent; | |
| 227 | + // border-right: 5px transparent; | |
| 228 | + // border-top: 5px #FFFFFF; | |
| 229 | + // border-bottom: 0 transparent; | |
| 230 | + // border-style: solid; | |
| 231 | + // } | |
| 232 | + .p1 { | |
| 233 | + min-height: 40px; | |
| 234 | + // font-family: PingFangSC-Regular; | |
| 235 | + font-size: 14px; | |
| 236 | + color: #333333; | |
| 237 | + letter-spacing: -0.26px; | |
| 238 | + line-height: 18px; | |
| 239 | + // line-height: 20px; | |
| 240 | + } | |
| 241 | + .p2 { | |
| 242 | + height: 34px; | |
| 243 | + padding: 1px 0 3px 0; | |
| 244 | + // font-family: PingFangSC-Regular; | |
| 245 | + font-size: 12px; | |
| 246 | + color: #999999; | |
| 247 | + letter-spacing: -0.23px; | |
| 248 | + } | |
| 249 | + .p3 { | |
| 250 | + height: 20px; | |
| 251 | + // font-family: PingFangSC-Regular; | |
| 252 | + font-size: 14px; | |
| 253 | + color: #ff6b4a; | |
| 254 | + letter-spacing: -0.26px; | |
| 255 | + } | |
| 256 | + .p4 { | |
| 257 | + font-size: 12px; | |
| 258 | + color: #999999; | |
| 259 | + letter-spacing: -0.23px; | |
| 260 | + margin-left: 10px; | |
| 261 | + } | |
| 262 | + } | |
| 263 | + } | |
| 264 | + // .order-info-goodsnum { | |
| 265 | + // display: flex; | |
| 266 | + // align-items: center; | |
| 267 | + // justify-content: flex-end; | |
| 268 | + // text { | |
| 269 | + // margin-right: 44rpx; | |
| 270 | + // // ont-family: PingFangSC-Regular; | |
| 271 | + // font-size: 12px; | |
| 272 | + // color: #999999; | |
| 273 | + // letter-spacing: -0.23px; | |
| 274 | + // } | |
| 275 | + // } | |
| 276 | + .order-info-freight { | |
| 277 | + display: block; | |
| 278 | + margin-left: 40rpx; | |
| 279 | + margin-top: 22rpx; | |
| 280 | + .p1 { | |
| 281 | + // font-family: PingFangSC-Regular; | |
| 282 | + font-size: 14px; | |
| 283 | + color: #333333; | |
| 284 | + letter-spacing: -0.26px; | |
| 285 | + line-height: 18px; | |
| 286 | + margin-right: 24px; | |
| 287 | + } | |
| 288 | + .p2 { | |
| 289 | + // font-family: PingFangSC-Regular; | |
| 290 | + font-size: 14px; | |
| 291 | + color: #ff6b4a; | |
| 292 | + letter-spacing: -0.26px; | |
| 293 | + } | |
| 294 | + } | |
| 295 | + .order-info-discount { | |
| 296 | + display: block; | |
| 297 | + margin-left: 40rpx; | |
| 298 | + margin-top: 24rpx; | |
| 299 | + .p1 { | |
| 300 | + // font-family: PingFangSC-Regular; | |
| 301 | + font-size: 14px; | |
| 302 | + color: #333333; | |
| 303 | + letter-spacing: -0.26px; | |
| 304 | + line-height: 18px; | |
| 305 | + margin-right: 24px; | |
| 306 | + } | |
| 307 | + .p2 { | |
| 308 | + // font-family: PingFangSC-Regular; | |
| 309 | + font-size: 14px; | |
| 310 | + color: #ff6b4a; | |
| 311 | + letter-spacing: -0.26px; | |
| 312 | + } | |
| 313 | + } | |
| 314 | + .order-info-price { | |
| 315 | + display: block; | |
| 316 | + margin-left: 40rpx; | |
| 317 | + margin-top: 24rpx; | |
| 318 | + .p1 { | |
| 319 | + // font-family: PingFangSC-Semibold; | |
| 320 | + font-size: 14px; | |
| 321 | + color: #333333; | |
| 322 | + letter-spacing: -0.26px; | |
| 323 | + line-height: 18px; | |
| 324 | + margin-right: 24px; | |
| 325 | + } | |
| 326 | + .p2 { | |
| 327 | + // font-family: PingFangSC-Semibold; | |
| 328 | + font-size: 14px; | |
| 329 | + color: #ff6b4a; | |
| 330 | + letter-spacing: -0.26px; | |
| 331 | + } | |
| 332 | + } | |
| 333 | + .order-info-num { | |
| 334 | + display: block; | |
| 335 | + margin-left: 40rpx; | |
| 336 | + margin-top: 44rpx; | |
| 337 | + text { | |
| 338 | + // font-family: PingFangSC-Regular; | |
| 339 | + font-size: 12px; | |
| 340 | + color: #999999; | |
| 341 | + letter-spacing: -0.23px; | |
| 342 | + } | |
| 343 | + } | |
| 344 | + .order-info-time { | |
| 345 | + display: block; | |
| 346 | + margin: 8rpx 0 48rpx 40rpx; | |
| 347 | + text { | |
| 348 | + // font-family: PingFangSC-Regular; | |
| 349 | + font-size: 12px; | |
| 350 | + color: #999999; | |
| 351 | + letter-spacing: -0.23px; | |
| 352 | + } | |
| 353 | + } | |
| 354 | + .order-info-hr { | |
| 355 | + width: 520rpx; | |
| 356 | + height: 1px; | |
| 357 | + background-color: #e9e9e9; | |
| 358 | + margin-bottom: 20rpx; | |
| 359 | + } | |
| 360 | + .order-info-contact { | |
| 361 | + display: flex; | |
| 362 | + padding-bottom: 28rpx; | |
| 363 | + image { | |
| 364 | + width: 19px; | |
| 365 | + height: 16px; | |
| 366 | + } | |
| 367 | + text { | |
| 368 | + // font-family: PingFangSC-Regular; | |
| 369 | + margin-left: 20rpx; | |
| 370 | + font-size: 14px; | |
| 371 | + color: #333333; | |
| 372 | + letter-spacing: -0.26px; | |
| 373 | + line-height: 18px; | |
| 374 | + } | |
| 375 | + } | |
| 376 | +} | |
| 254 | 377 | |
| 255 | - } | |
| 256 | - // .order-info-goodsnum { | |
| 257 | - // display: flex; | |
| 258 | - // align-items: center; | |
| 259 | - // justify-content: flex-end; | |
| 260 | - // text { | |
| 261 | - // margin-right: 44rpx; | |
| 262 | - // // ont-family: PingFangSC-Regular; | |
| 263 | - // font-size: 12px; | |
| 264 | - // color: #999999; | |
| 265 | - // letter-spacing: -0.23px; | |
| 266 | - // } | |
| 267 | - // } | |
| 268 | - .order-info-freight { | |
| 269 | - display: block; | |
| 270 | - margin-left: 40rpx; | |
| 271 | - margin-top: 22rpx; | |
| 272 | - .p1{ | |
| 273 | - // font-family: PingFangSC-Regular; | |
| 274 | - font-size: 14px; | |
| 275 | - color: #333333; | |
| 276 | - letter-spacing: -0.26px; | |
| 277 | - line-height: 18px; | |
| 278 | - margin-right: 24px; | |
| 279 | - } | |
| 280 | - .p2 { | |
| 281 | - // font-family: PingFangSC-Regular; | |
| 282 | - font-size: 14px; | |
| 283 | - color: #FF6B4A; | |
| 284 | - letter-spacing: -0.26px; | |
| 285 | - } | |
| 286 | - } | |
| 287 | - .order-info-discount { | |
| 288 | - display: block; | |
| 289 | - margin-left: 40rpx; | |
| 290 | - margin-top: 24rpx; | |
| 291 | - .p1 { | |
| 292 | - // font-family: PingFangSC-Regular; | |
| 293 | - font-size: 14px; | |
| 294 | - color: #333333; | |
| 295 | - letter-spacing: -0.26px; | |
| 296 | - line-height: 18px; | |
| 297 | - margin-right: 24px; | |
| 298 | - } | |
| 299 | - .p2 { | |
| 300 | - // font-family: PingFangSC-Regular; | |
| 301 | - font-size: 14px; | |
| 302 | - color: #FF6B4A; | |
| 303 | - letter-spacing: -0.26px; | |
| 304 | - } | |
| 305 | - } | |
| 306 | - .order-info-price { | |
| 307 | - display: block; | |
| 308 | - margin-left: 40rpx; | |
| 309 | - margin-top: 24rpx; | |
| 310 | - .p1 { | |
| 311 | - // font-family: PingFangSC-Semibold; | |
| 312 | - font-size: 14px; | |
| 313 | - color: #333333; | |
| 314 | - letter-spacing: -0.26px; | |
| 315 | - line-height: 18px; | |
| 316 | - margin-right: 24px; | |
| 317 | - } | |
| 318 | - .p2 { | |
| 319 | - // font-family: PingFangSC-Semibold; | |
| 320 | - font-size: 14px; | |
| 321 | - color: #FF6B4A; | |
| 322 | - letter-spacing: -0.26px; | |
| 323 | - } | |
| 324 | - } | |
| 325 | - .order-info-num{ | |
| 326 | - display: block; | |
| 327 | - margin-left: 40rpx; | |
| 328 | - margin-top: 44rpx; | |
| 329 | - text{ | |
| 330 | - // font-family: PingFangSC-Regular; | |
| 331 | - font-size: 12px; | |
| 332 | - color: #999999; | |
| 333 | - letter-spacing: -0.23px; | |
| 334 | - } | |
| 335 | - } | |
| 336 | - .order-info-time { | |
| 337 | - display: block; | |
| 338 | - margin: 8rpx 0 48rpx 40rpx; | |
| 339 | - text{ | |
| 340 | - // font-family: PingFangSC-Regular; | |
| 341 | - font-size: 12px; | |
| 342 | - color: #999999; | |
| 343 | - letter-spacing: -0.23px; | |
| 344 | - } | |
| 345 | - } | |
| 346 | - .order-info-hr{ | |
| 347 | - width: 520rpx; | |
| 348 | - height: 1px; | |
| 349 | - background-color: #E9E9E9; | |
| 350 | - margin-bottom: 20rpx; | |
| 351 | - } | |
| 352 | - .order-info-contact { | |
| 353 | - display: flex; | |
| 354 | - padding-bottom: 28rpx; | |
| 355 | - image{ | |
| 356 | - width: 19px; | |
| 357 | - height: 16px; | |
| 358 | - } | |
| 359 | - text { | |
| 360 | - // font-family: PingFangSC-Regular; | |
| 361 | - margin-left: 20rpx; | |
| 362 | - font-size: 14px; | |
| 363 | - color: #333333; | |
| 364 | - letter-spacing: -0.26px; | |
| 365 | - line-height: 18px; | |
| 366 | - } | |
| 367 | - } | |
| 368 | - } | |
| 369 | - | |
| 370 | - .order-confim { | |
| 371 | - display: flex; | |
| 372 | - align-items: center; | |
| 373 | - z-index: 999; | |
| 374 | - width: 100%; | |
| 375 | - height: 112rpx; | |
| 376 | - position: fixed; | |
| 377 | - bottom: 0; | |
| 378 | - background: #FFFFFF; | |
| 379 | - button { | |
| 380 | - width: 204rpx; | |
| 381 | - height: 80rpx; | |
| 382 | - border: 1px solid #FF6B4A; | |
| 383 | - border-radius: 40rpx; | |
| 384 | - font-size: 32rpx; | |
| 385 | - letter-spacing: -0.3px; | |
| 386 | - margin-right: 0; | |
| 387 | - } | |
| 388 | - .b1 { | |
| 389 | - // font-family: PingFangSC-Regular; | |
| 390 | - color: #FF6B4A; | |
| 391 | - | |
| 392 | - } | |
| 393 | - .b2 { | |
| 394 | - // font-family: PingFangSC-Regular; | |
| 395 | - background-color: #FF6B4A; | |
| 396 | - color: #FFFFFF; | |
| 397 | - margin: 0 26rpx 0 20rpx; | |
| 398 | - } | |
| 399 | - } | |
| 400 | - | |
| 378 | +.order-confim { | |
| 379 | + display: flex; | |
| 380 | + align-items: center; | |
| 381 | + z-index: 999; | |
| 382 | + width: 100%; | |
| 383 | + height: 112rpx; | |
| 384 | + position: fixed; | |
| 385 | + bottom: 0; | |
| 386 | + background: #ffffff; | |
| 387 | + button { | |
| 388 | + width: 204rpx; | |
| 389 | + height: 80rpx; | |
| 390 | + border: 1px solid #ff6b4a; | |
| 391 | + border-radius: 40rpx; | |
| 392 | + font-size: 32rpx; | |
| 393 | + letter-spacing: -0.3px; | |
| 394 | + margin-right: 0; | |
| 395 | + } | |
| 396 | + .b1 { | |
| 397 | + // font-family: PingFangSC-Regular; | |
| 398 | + color: #ff6b4a; | |
| 399 | + } | |
| 400 | + .b2 { | |
| 401 | + // font-family: PingFangSC-Regular; | |
| 402 | + background-color: #ff6b4a; | |
| 403 | + color: #ffffff; | |
| 404 | + margin: 0 26rpx 0 20rpx; | |
| 405 | + } | |
| 406 | +} | |
| 401 | 407 | </style> | ... | ... |
src/pages/purchaseLenses/purchaseLenses.vue
| ... | ... | @@ -18,61 +18,200 @@ |
| 18 | 18 | </view> |
| 19 | 19 | </view> |
| 20 | 20 | </view> |
| 21 | + <view class="goods-data"> | |
| 22 | + <view class="opCollapse"> | |
| 23 | + <view class="body"> | |
| 24 | + <template v-if="opIsOpen"> | |
| 25 | + <view class="goods-form"> | |
| 26 | + <view class="data-title"> | |
| 27 | + <image src="../../static/icon-data.png" ></image> | |
| 28 | + <text class="p1">填写验光数据</text> | |
| 29 | + </view> | |
| 30 | + <text class="p2">没有验光数据?请到线下眼镜店验光哦~</text> | |
| 31 | + <view class="picker" > | |
| 32 | + <view class="picker-choice"> | |
| 33 | + <view class="choice-left"> | |
| 34 | + <text class="p11">验光单取名:</text> | |
| 35 | + </view> | |
| 36 | + <input class="choice-name uni-input" placeholder="下系" /> | |
| 37 | + </view> | |
| 38 | + </view> | |
| 39 | + <view class="picker" > | |
| 40 | + <view class="picker-choice"> | |
| 41 | + <view class="choice-left"> | |
| 42 | + <text class="p11">{{pickerInfoList[0].nameC}}</text> | |
| 43 | + <text class="p12">{{pickerInfoList[0].nameE}}</text> | |
| 44 | + </view> | |
| 45 | + <text class="p13">左 (OD)</text> | |
| 46 | + <text class="p14">{{pickerInfoList[0].nameArray1[pickerInfoList[0].nameIndex1]}}</text> | |
| 47 | + <picker @change="bindPickerChange01" :value="pickerInfoList[0].nameIndex1" :range="pickerInfoList[0].nameArray1"> | |
| 48 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 49 | + </picker> | |
| 50 | + <text class="p13">右 (OS)</text> | |
| 51 | + <text class="p14">{{pickerInfoList[0].nameArray2[pickerInfoList[0].nameIndex2]}}</text> | |
| 52 | + <picker @change="bindPickerChange02" :value="pickerInfoList[0].nameIndex2" :range="pickerInfoList[0].nameArray2"> | |
| 53 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 54 | + </picker> | |
| 55 | + </view> | |
| 56 | + </view> | |
| 57 | + <view class="picker" > | |
| 58 | + <view class="picker-choice"> | |
| 59 | + <view class="choice-left"> | |
| 60 | + <text class="p11">{{pickerInfoList[1].nameC}}</text> | |
| 61 | + <text class="p12">{{pickerInfoList[1].nameE}}</text> | |
| 62 | + </view> | |
| 63 | + <text class="p13">左 (OD)</text> | |
| 64 | + <text class="p14">{{pickerInfoList[1].nameArray1[pickerInfoList[1].nameIndex1]}}</text> | |
| 65 | + <picker @change="bindPickerChange11" :value="pickerInfoList[1].nameIndex1" :range="pickerInfoList[1].nameArray1"> | |
| 66 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 67 | + </picker> | |
| 68 | + <text class="p13">右 (OS)</text> | |
| 69 | + <text class="p14">{{pickerInfoList[1].nameArray2[pickerInfoList[1].nameIndex2]}}</text> | |
| 70 | + <picker @change="bindPickerChange12" :value="pickerInfoList[1].nameIndex2" :range="pickerInfoList[1].nameArray2"> | |
| 71 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 72 | + </picker> | |
| 73 | + </view> | |
| 74 | + </view> | |
| 75 | + <view class="picker" > | |
| 76 | + <view class="picker-choice"> | |
| 77 | + <view class="choice-left"> | |
| 78 | + <text class="p11">{{pickerInfoList[2].nameC}}</text> | |
| 79 | + <text class="p12">{{pickerInfoList[2].nameE}}</text> | |
| 80 | + </view> | |
| 81 | + <text class="p13">左 (OD)</text> | |
| 82 | + <text class="p14">{{pickerInfoList[2].nameArray1[pickerInfoList[2].nameIndex1]}}</text> | |
| 83 | + <picker @change="bindPickerChange21" :value="pickerInfoList[2].nameIndex1" :range="pickerInfoList[2].nameArray1"> | |
| 84 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 85 | + </picker> | |
| 86 | + <text class="p13">右 (OS)</text> | |
| 87 | + <text class="p14">{{pickerInfoList[2].nameArray2[pickerInfoList[2].nameIndex2]}}</text> | |
| 88 | + <picker @change="bindPickerChange22" :value="pickerInfoList[2].nameIndex2" :range="pickerInfoList[2].nameArray2"> | |
| 89 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 90 | + </picker> | |
| 91 | + </view> | |
| 92 | + </view> | |
| 93 | + <view class="picker" > | |
| 94 | + <view class="picker-choice"> | |
| 95 | + <view class="choice-left"> | |
| 96 | + <text class="p11">{{pickerInfoList[3].nameC}}</text> | |
| 97 | + <text class="p12">{{pickerInfoList[3].nameE}}</text> | |
| 98 | + </view> | |
| 99 | + <text class="p13">左 (OD)</text> | |
| 100 | + <text class="p14">{{pickerInfoList[3].nameArray1[pickerInfoList[3].nameIndex1]}}</text> | |
| 101 | + <picker @change="bindPickerChange31" :value="pickerInfoList[3].nameIndex1" :range="pickerInfoList[3].nameArray1"> | |
| 102 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 103 | + </picker> | |
| 104 | + <text class="p13">右 (OS)</text> | |
| 105 | + <text class="p14">{{pickerInfoList[3].nameArray2[pickerInfoList[3].nameIndex2]}}</text> | |
| 106 | + <picker @change="bindPickerChange32" :value="pickerInfoList[3].nameIndex2" :range="pickerInfoList[3].nameArray2"> | |
| 107 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 108 | + </picker> | |
| 109 | + </view> | |
| 110 | + </view> | |
| 111 | + <view class="picker" > | |
| 112 | + <view class="picker-choice"> | |
| 113 | + <view class="choice-left"> | |
| 114 | + <text class="p11">{{pickerInfoList[4].nameC}}</text> | |
| 115 | + </view> | |
| 116 | + <text class="p13-date">年 (Y)</text> | |
| 117 | + <text class="p14" style="width: 34px;">{{pickerInfoList[4].nameArray1[pickerInfoList[4].nameIndex1]}}</text> | |
| 118 | + <picker @change="bindPickerChange41" :value="pickerInfoList[4].nameIndex1" :range="pickerInfoList[4].nameArray1"> | |
| 119 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 120 | + </picker> | |
| 121 | + <text class="p13-date">月 (M)</text> | |
| 122 | + <text class="p14" style="width: 30px;">{{pickerInfoList[4].nameArray2[pickerInfoList[4].nameIndex2]}}</text> | |
| 123 | + <picker @change="bindPickerChange42" :value="pickerInfoList[4].nameIndex2" :range="pickerInfoList[4].nameArray2"> | |
| 124 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 125 | + </picker> | |
| 126 | + <text class="p13-date">日 (D)</text> | |
| 127 | + <text class="p14" style="width: 30px;">{{pickerInfoList[4].nameArray3[pickerInfoList[4].nameIndex3]}}</text> | |
| 128 | + <picker @change="bindPickerChange43" :value="pickerInfoList[4].nameIndex3" :range="pickerInfoList[4].nameArray3"> | |
| 129 | + <image src="../../static/detail-tabicon.png" ></image> | |
| 130 | + </picker> | |
| 131 | + </view> | |
| 132 | + </view> | |
| 133 | + <view class="confirm"> | |
| 134 | + <image :src="tablist.confirm ? tabicon[0] : tabicon[1]" @click="changeConfirm"></image> | |
| 135 | + <text>确认以上输入信息来源于我的验光数据!</text> | |
| 136 | + </view> | |
| 137 | + </view> | |
| 138 | + | |
| 139 | + </template> | |
| 140 | + <template v-else> | |
| 141 | + <view v-for="item in pickerInfoList" :key="item.key" class="bodyBox"> | |
| 142 | + <template v-if="item.nameC==='验光日期'"> | |
| 143 | + <text class="names">{{item.nameC}}</text> | |
| 144 | + <text style="margin-right: 5px;">{{item.nameArray1[item.nameIndex1]}}年</text> | |
| 145 | + <text style="margin-right: 5px;">{{item.nameArray2[item.nameIndex2]}}月</text> | |
| 146 | + <text>{{item.nameArray3[item.nameIndex2]}}日</text> | |
| 147 | + </template> | |
| 148 | + <template v-else> | |
| 149 | + <template v-if="item.nameC==='度数'"> | |
| 150 | + <text style="display: inline;">*</text> | |
| 151 | + </template> | |
| 152 | + | |
| 153 | + <text class="names">{{item.nameC}}</text> | |
| 154 | + <text style="margin-right: 10px;">左 {{item.nameArray1[item.nameIndex1]}}</text> | |
| 155 | + <text>右 {{item.nameArray2[item.nameIndex2]}}</text> | |
| 156 | + </template> | |
| 157 | + </view> | |
| 158 | + </template> | |
| 159 | + </view> | |
| 160 | + </view> | |
| 161 | + </view> | |
| 21 | 162 | <view class="choose"> |
| 22 | 163 | <view class="chooseItem_1 chooseItem"> |
| 23 | 164 | <UniCollapse @change="change(1)" > |
| 24 | - <UniCollapseItem open=true title="款式挑选" showAnimation=false> | |
| 25 | - <view class="chooseRes" v-show="!showChooseRes1">* {{chooseRes1}}</view> | |
| 26 | - <view class="chooseItem_1_content"> | |
| 27 | - <view class="itemsWrap"> | |
| 28 | - <view class="item1" | |
| 29 | - v-for="(item,index) in chooseItem1" | |
| 30 | - :key="index" | |
| 31 | - :style="item.style" | |
| 32 | - :class="{ active1: current1 === index }" | |
| 33 | - @click="onClickItem1(index)" | |
| 34 | - ></view> | |
| 35 | - </view> | |
| 36 | - </view> | |
| 37 | - </UniCollapseItem> | |
| 165 | + <UniCollapseItem open=true title="款式挑选" showAnimation=false> | |
| 166 | + <view class="chooseRes" v-show="show[1]">* {{chooseRes1}}</view> | |
| 167 | + <view class="chooseItem_1_content"> | |
| 168 | + <view class="itemsWrap"> | |
| 169 | + <view class="item1" | |
| 170 | + v-for="(item,index) in chooseItem1" | |
| 171 | + :key="index" | |
| 172 | + :style="item.style" | |
| 173 | + :class="{ active1: current1 === index }" | |
| 174 | + @click="onClickItem1(index)" | |
| 175 | + ></view> | |
| 176 | + </view> | |
| 177 | + </view> | |
| 178 | + </UniCollapseItem> | |
| 38 | 179 | </UniCollapse> |
| 39 | - <view class="chooseRes" v-show="showChooseRes1">* {{chooseRes1}}</view> | |
| 180 | + <view class="chooseRes" v-show="show[1]">* {{chooseRes1}}</view> | |
| 40 | 181 | </view> |
| 41 | 182 | <view class="chooseItem_2 chooseItem "> |
| 42 | 183 | <UniCollapse @change="change(2)" > |
| 43 | - <UniCollapseItem open=true title="直径" showAnimation=false> | |
| 44 | - <!-- <view class="chooseRes" v-show="!showChooseRes2">* {{chooseRes2}}</view> --> | |
| 45 | - <view class="chooseItem_1_content"> | |
| 46 | - <view class="itemsWrap"> | |
| 47 | - <view class="item2" | |
| 48 | - v-for="(item,index) in chooseItem2" | |
| 49 | - :key="index" | |
| 50 | - :class="{ active2: current2 === index }" | |
| 51 | - @click="onClickItem2(index)" | |
| 52 | - >{{item.num}}</view> | |
| 53 | - </view> | |
| 54 | - </view> | |
| 55 | - </UniCollapseItem> | |
| 184 | + <UniCollapseItem open=true title="直径" showAnimation=false> | |
| 185 | + <view class="chooseItem_1_content"> | |
| 186 | + <view class="itemsWrap"> | |
| 187 | + <view class="item2" | |
| 188 | + v-for="(item,index) in chooseItem2" | |
| 189 | + :key="index" | |
| 190 | + :class="{ active2: current2 === index }" | |
| 191 | + @click="onClickItem2(index)" | |
| 192 | + >{{item.num}}</view> | |
| 193 | + </view> | |
| 194 | + </view> | |
| 195 | + </UniCollapseItem> | |
| 56 | 196 | </UniCollapse> |
| 57 | - <view class="chooseRes" v-show="showChooseRes2">* {{chooseRes2}}</view> | |
| 197 | + <view class="chooseRes" v-show="show[2]">* {{chooseRes2}}</view> | |
| 58 | 198 | </view> |
| 59 | 199 | <view class="chooseItem_3 chooseItem"> |
| 60 | 200 | <UniCollapse @change="change(3)" > |
| 61 | - <UniCollapseItem open=true title="度数" showAnimation=false> | |
| 62 | - <!-- <view class="chooseRes" v-show="!showChooseRes3">* {{chooseRes3}}</view> --> | |
| 63 | - <view class="chooseItem_1_content"> | |
| 64 | - <view class="itemsWrap"> | |
| 65 | - <view class="item2" | |
| 66 | - v-for="(item,index) in chooseItem3" | |
| 67 | - :key="index" | |
| 68 | - :class="{ active2: current3 === index }" | |
| 69 | - @click="onClickItem3(index)" | |
| 70 | - >{{item}}</view> | |
| 71 | - </view> | |
| 72 | - </view> | |
| 73 | - </UniCollapseItem> | |
| 201 | + <UniCollapseItem open=true title="度数" showAnimation=false> | |
| 202 | + <view class="chooseItem_1_content"> | |
| 203 | + <view class="itemsWrap"> | |
| 204 | + <view class="item2" | |
| 205 | + v-for="(item,index) in chooseItem3" | |
| 206 | + :key="index" | |
| 207 | + :class="{ active2: current3 === index }" | |
| 208 | + @click="onClickItem3(index)" | |
| 209 | + >{{item}}</view> | |
| 210 | + </view> | |
| 211 | + </view> | |
| 212 | + </UniCollapseItem> | |
| 74 | 213 | </UniCollapse> |
| 75 | - <view class="chooseRes" v-show="showChooseRes3">* {{chooseRes3}}</view> | |
| 214 | + <view class="chooseRes" v-show="show[3]">* {{chooseRes3}}</view> | |
| 76 | 215 | </view> |
| 77 | 216 | </view> |
| 78 | 217 | <view class="button" @click="toComfirmOrder"> |
| ... | ... | @@ -84,105 +223,110 @@ |
| 84 | 223 | <script> |
| 85 | 224 | import UniCollapse from '@/components/UniCollapse/UniCollapse.vue' |
| 86 | 225 | import UniCollapseItem from '@/components/UniCollapseItem/UniCollapseItem.vue' |
| 226 | + import store from '@/store' | |
| 227 | + | |
| 87 | 228 | export default { |
| 88 | - components: {UniCollapse,UniCollapseItem}, | |
| 229 | + components: { | |
| 230 | + UniCollapse, | |
| 231 | + UniCollapseItem, | |
| 232 | + }, | |
| 89 | 233 | data() { |
| 90 | 234 | return { |
| 91 | - count:1, | |
| 92 | - maxCount:20, | |
| 93 | - addDisabled:false, | |
| 94 | - desDisabled:false, | |
| 95 | - current1:0, | |
| 96 | - current2:0, | |
| 97 | - current3:0, | |
| 98 | - showChooseRes1:false, | |
| 99 | - showChooseRes2:false, | |
| 100 | - showChooseRes3:false, | |
| 101 | - chooseRes1:'Miss 黑二代【减龄自然】', | |
| 102 | - chooseRes2:'14.0', | |
| 103 | - chooseRes3:0, | |
| 104 | - chooseItem1:[ | |
| 105 | - {style:"opacity: 0.7;background-image: radial-gradient(50% 148%, #ECEAEA 50%, #8D8C8C 100%);",describ:"Miss 黑1代【减龄自然】"}, | |
| 106 | - {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #624B3F 100%);",describ:"Miss 黑二代【防紫外线】"}, | |
| 107 | - {style:"background-image: radial-gradient(50% 148%, #FDF8F6 50%, #94380B 100%);",describ:"Miss 黑3代【防紫外线】"}, | |
| 108 | - {style:"background-image: radial-gradient(50% 148%, #FFFFFF 50%, #324A05 100%);",describ:"Miss 黑4代【防紫外线】"}, | |
| 109 | - {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #624B3F 100%);",describ:"Miss 黑5代【防紫外线】"}, | |
| 110 | - {style:"opacity: 0.7;background-image: radial-gradient(50% 150%, #F0EEE7 50%, #6F0838 100%);",describ:"Miss 黑6代【防紫外线】"}, | |
| 111 | - {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #370B4E 100%);",describ:"Miss 黑7代【防紫外线】"}, | |
| 112 | - {style:"background-image: radial-gradient(50% 148%, #FFFFFF 50%, #324A05 100%);",describ:"Miss 黑4代【防紫外线】"}, | |
| 113 | - {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #624B3F 100%);",describ:"Miss 黑5代【防紫外线】"}, | |
| 114 | - {style:"opacity: 0.7;background-image: radial-gradient(50% 150%, #F0EEE7 50%, #6F0838 100%);",describ:"Miss 黑6代【防紫外线】"}, | |
| 115 | - {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #370B4E 100%);",describ:"Miss 黑7代【防紫外线】"}, | |
| 116 | - {style:"background-image: radial-gradient(50% 148%, #FFFFFF 50%, #324A05 100%);",describ:"Miss 黑4代【防紫外线】"}, | |
| 117 | - {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #624B3F 100%);",describ:"Miss 黑5代【防紫外线】"}, | |
| 118 | - {style:"opacity: 0.7;background-image: radial-gradient(50% 150%, #F0EEE7 50%, #6F0838 100%);",describ:"Miss 黑6代【防紫外线】"}, | |
| 119 | - {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #370B4E 100%);",describ:"Miss 黑7代【防紫外线】"}, | |
| 235 | + count: 1, | |
| 236 | + maxCount: 20, | |
| 237 | + opIsOpen: true, | |
| 238 | + addDisabled: false, | |
| 239 | + desDisabled: false, | |
| 240 | + current1: 0, | |
| 241 | + current2: 0, | |
| 242 | + current3: 0, | |
| 243 | + actice: [-1, -1, -1], | |
| 244 | + show: [0, 0, 0, 0], | |
| 245 | + chooseRes1:{ | |
| 246 | + sku_name: 'Miss 黑二代【减龄自然】', | |
| 247 | + sk_id: '128', | |
| 248 | + }, | |
| 249 | + chooseRes2: '14.0', | |
| 250 | + chooseRes3: 0, | |
| 251 | + chooseItem1: [ | |
| 252 | + {style:"opacity: 0.7;background-image: radial-gradient(50% 148%, #ECEAEA 50%, #8D8C8C 100%);",describ:"Miss 黑1代【减龄自然】"}, | |
| 253 | + {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #624B3F 100%);",describ:"Miss 黑二代【防紫外线】"}, | |
| 254 | + {style:"background-image: radial-gradient(50% 148%, #FDF8F6 50%, #94380B 100%);",describ:"Miss 黑3代【防紫外线】"}, | |
| 255 | + {style:"background-image: radial-gradient(50% 148%, #FFFFFF 50%, #324A05 100%);",describ:"Miss 黑4代【防紫外线】"}, | |
| 256 | + {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #624B3F 100%);",describ:"Miss 黑5代【防紫外线】"}, | |
| 257 | + {style:"opacity: 0.7;background-image: radial-gradient(50% 150%, #F0EEE7 50%, #6F0838 100%);",describ:"Miss 黑6代【防紫外线】"}, | |
| 258 | + {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #370B4E 100%);",describ:"Miss 黑7代【防紫外线】"}, | |
| 259 | + {style:"background-image: radial-gradient(50% 148%, #FFFFFF 50%, #324A05 100%);",describ:"Miss 黑4代【防紫外线】"}, | |
| 260 | + {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #624B3F 100%);",describ:"Miss 黑5代【防紫外线】"}, | |
| 261 | + {style:"opacity: 0.7;background-image: radial-gradient(50% 150%, #F0EEE7 50%, #6F0838 100%);",describ:"Miss 黑6代【防紫外线】"}, | |
| 262 | + {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #370B4E 100%);",describ:"Miss 黑7代【防紫外线】"}, | |
| 263 | + {style:"background-image: radial-gradient(50% 148%, #FFFFFF 50%, #324A05 100%);",describ:"Miss 黑4代【防紫外线】"}, | |
| 264 | + {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #624B3F 100%);",describ:"Miss 黑5代【防紫外线】"}, | |
| 265 | + {style:"opacity: 0.7;background-image: radial-gradient(50% 150%, #F0EEE7 50%, #6F0838 100%);",describ:"Miss 黑6代【防紫外线】"}, | |
| 266 | + {style:"background-image: radial-gradient(50% 143%, #AEA8A8 45%, #370B4E 100%);",describ:"Miss 黑7代【防紫外线】"}, | |
| 120 | 267 | ], |
| 121 | 268 | chooseItem2:[ |
| 122 | - {num:"14.0"}, | |
| 123 | - {num:"14.2"}, | |
| 124 | - {num:"14.4"}, | |
| 125 | - {num:"14.5"}, | |
| 269 | + {num:"14.0"}, | |
| 270 | + {num:"14.2"}, | |
| 271 | + {num:"14.4"}, | |
| 272 | + {num:"14.5"}, | |
| 273 | + ], | |
| 274 | + chooseItem3:[0,100,125,150,175,200,225,250,275,300,325,350,375,400,425,450,470,500,525,550,575,600,1000], | |
| 275 | + // 度数相关数据 | |
| 276 | + pickerInfoList:[ | |
| 277 | + {nameC:"度数",nameE:"(SPH)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:0}, | |
| 278 | + {nameC:"散光",nameE:"(CYL)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:1}, | |
| 279 | + {nameC:"散光轴位",nameE:"(AXI)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:2}, | |
| 280 | + {nameC:"双眼瞳距",nameE:"(PD)",nameArray1:[1.5,2.5,3.5,4.5],nameIndex1:0,nameArray2:[1.5,2.5,3.5,4.5],nameIndex2:0,key:3}, | |
| 281 | + {nameC:"验光日期",nameE:'',nameArray1:[2017,2018,2019,2020,2021],nameIndex1:0,nameArray2:[1,2,3,4,5,6,7],nameIndex2:0,nameArray3:[1,2,3,4,5,6],nameIndex3:0} | |
| 126 | 282 | ], |
| 127 | - chooseItem3:[0,100,125,150,175,200,225,250,275,300,325,350,375,400,425,450,470,500,525,550,575,600,1000] | |
| 128 | 283 | }; |
| 129 | 284 | }, |
| 285 | + computed: { | |
| 286 | + attrList() { | |
| 287 | + return this.$store.state.read.goodInfo.attrList; | |
| 288 | + }, | |
| 289 | + skuList() { | |
| 290 | + return this.$store.state.read.goodInfo.skuList; | |
| 291 | + }, | |
| 292 | + }, | |
| 293 | + onLoad() { | |
| 294 | + store.dispatch('read/fetch', { | |
| 295 | + pid: 9, | |
| 296 | + }); | |
| 297 | + }, | |
| 130 | 298 | methods:{ |
| 131 | - change(num){ | |
| 132 | - switch (num){ | |
| 133 | - case 1: | |
| 134 | - if(this.showChooseRes1===true){ | |
| 135 | - this.showChooseRes1 = false | |
| 136 | - }else{ | |
| 137 | - this.showChooseRes1 = true | |
| 138 | - } | |
| 139 | - break; | |
| 140 | - case 2: | |
| 141 | - if(this.showChooseRes2===true){ | |
| 142 | - this.showChooseRes2 = false | |
| 143 | - }else{ | |
| 144 | - this.showChooseRes2 = true | |
| 145 | - } | |
| 146 | - break; | |
| 147 | - case 3: | |
| 148 | - if(this.showChooseRes3===true){ | |
| 149 | - this.showChooseRes3 = false | |
| 150 | - }else{ | |
| 151 | - this.showChooseRes3 = true | |
| 152 | - } | |
| 153 | - break; | |
| 154 | - default: | |
| 155 | - break; | |
| 156 | - } | |
| 299 | + change(num) { | |
| 300 | + this.show[num] = this.show[num] ? false : true; | |
| 157 | 301 | }, |
| 158 | 302 | onClickItem1(index) { |
| 159 | - if (this.current1 !== index) { | |
| 303 | + if (this.current1 !== index) { | |
| 160 | 304 | this.current1 = index; |
| 161 | 305 | this.chooseRes1 =this.chooseItem1[index].describ |
| 162 | - } | |
| 306 | + } | |
| 163 | 307 | }, |
| 164 | 308 | onClickItem2(index) { |
| 165 | - if (this.current2 !== index) { | |
| 309 | + if (this.current2 !== index) { | |
| 166 | 310 | this.current2 = index; |
| 167 | 311 | this.chooseRes2 =this.chooseItem2[index].num |
| 168 | - } | |
| 312 | + } | |
| 169 | 313 | }, |
| 170 | 314 | onClickItem3(index) { |
| 171 | - if (this.current3 !== index) { | |
| 315 | + if (this.current3 !== index) { | |
| 172 | 316 | this.current3 = index; |
| 173 | 317 | this.chooseRes3 =this.chooseItem3[index] |
| 174 | - } | |
| 318 | + } | |
| 175 | 319 | }, |
| 176 | 320 | counter(isadd){ |
| 177 | - if(isadd){ | |
| 178 | - this.count >= this.maxCount? this.addDisabled = true:this.count++; | |
| 179 | - }else{ | |
| 180 | - this.count <= 1? this.desDisabled = true:this.count--; | |
| 321 | + if (isadd) { | |
| 322 | + this.count >= this.maxCount? this.addDisabled = true:this.count++; | |
| 323 | + } else { | |
| 324 | + this.count <= 1? this.desDisabled = true:this.count--; | |
| 181 | 325 | } |
| 182 | 326 | }, |
| 183 | 327 | toComfirmOrder(){ |
| 184 | 328 | uni.navigateTo({ |
| 185 | - url:'../confirmOrder/confirmOrder' | |
| 329 | + url:'../confirmOrder/confirmOrder' | |
| 186 | 330 | }) |
| 187 | 331 | } |
| 188 | 332 | } |
| ... | ... | @@ -190,7 +334,7 @@ |
| 190 | 334 | </script> |
| 191 | 335 | |
| 192 | 336 | <style lang="scss"> |
| 193 | - .content{ | |
| 337 | + .content { | |
| 194 | 338 | min-height: 100vh; |
| 195 | 339 | background-color: #F2F2F2; |
| 196 | 340 | // padding-top: 20rpx; |
| ... | ... | @@ -207,10 +351,10 @@ |
| 207 | 351 | .imageWrap{ |
| 208 | 352 | height: 188rpx; |
| 209 | 353 | width: 188rpx; |
| 210 | - margin-right: 28rpx; | |
| 354 | + margin-right: 28rpx; | |
| 211 | 355 | image{ |
| 212 | - height: 188rpx; | |
| 213 | - width: 188rpx; | |
| 356 | + height: 188rpx; | |
| 357 | + width: 188rpx; | |
| 214 | 358 | } |
| 215 | 359 | } |
| 216 | 360 | .infoRight{ |
| ... | ... | @@ -219,45 +363,212 @@ |
| 219 | 363 | align-items: flex-start; |
| 220 | 364 | justify-content: space-between; |
| 221 | 365 | .goodName{ |
| 222 | - font-size: 28rpx; | |
| 223 | - color: #333333; | |
| 366 | + font-size: 28rpx; | |
| 367 | + color: #333333; | |
| 224 | 368 | } |
| 225 | 369 | .remarks{ |
| 226 | - font-size: 20rpx; | |
| 227 | - color: #999999; | |
| 370 | + font-size: 20rpx; | |
| 371 | + color: #999999; | |
| 228 | 372 | } |
| 229 | 373 | .priceBox{ |
| 230 | - display: flex; | |
| 231 | - justify-content: space-between; | |
| 232 | - align-items: center; | |
| 233 | - width: 100%; | |
| 234 | - font-size: 14px; | |
| 235 | - color: #999999; | |
| 236 | - .price{ | |
| 237 | - color: #FF6B4A; | |
| 238 | - font-size: 28rpx; | |
| 239 | - } | |
| 240 | - .counter{ | |
| 241 | - display: flex; | |
| 242 | - flex-direction: row; | |
| 243 | - justify-content: space-between; | |
| 244 | - align-items: center; | |
| 245 | - font-size: 28rpx; | |
| 246 | - color: #333333; | |
| 247 | - width: 122rpx; | |
| 248 | - .btn{ | |
| 249 | - display: flex; | |
| 250 | - justify-content: center; | |
| 251 | - line-height: 32rpx; | |
| 252 | - height: 32rpx; | |
| 253 | - width: 32rpx; | |
| 254 | - background-color: #F2F2F2; | |
| 255 | - color: #CFCFCF; | |
| 256 | - } | |
| 257 | - } | |
| 258 | - } | |
| 374 | + display: flex; | |
| 375 | + justify-content: space-between; | |
| 376 | + align-items: center; | |
| 377 | + width: 100%; | |
| 378 | + font-size: 14px; | |
| 379 | + color: #999999; | |
| 380 | + .price{ | |
| 381 | + color: #FF6B4A; | |
| 382 | + font-size: 28rpx; | |
| 383 | + } | |
| 384 | + .counter{ | |
| 385 | + display: flex; | |
| 386 | + flex-direction: row; | |
| 387 | + justify-content: space-between; | |
| 388 | + align-items: center; | |
| 389 | + font-size: 28rpx; | |
| 390 | + color: #333333; | |
| 391 | + width: 122rpx; | |
| 392 | + .btn{ | |
| 393 | + display: flex; | |
| 394 | + justify-content: center; | |
| 395 | + line-height: 32rpx; | |
| 396 | + height: 32rpx; | |
| 397 | + width: 32rpx; | |
| 398 | + background-color: #F2F2F2; | |
| 399 | + color: #CFCFCF; | |
| 400 | + } | |
| 401 | + } | |
| 402 | + } | |
| 403 | + } | |
| 404 | + } | |
| 405 | + .goods-data{ | |
| 406 | + width: 100%; | |
| 407 | + box-sizing: border-box; | |
| 408 | + padding: 37rpx 40rpx 0 40rpx; | |
| 409 | + background: #FFFFFF; | |
| 410 | + border-radius: 12rpx; | |
| 411 | + .opCollapse{ | |
| 412 | + width: 100%; | |
| 413 | + padding-bottom: 28rpx; | |
| 414 | + margin-top: 7px; | |
| 415 | + border-bottom: 1px solid #E9E9E9; | |
| 416 | + .head{ | |
| 417 | + display: flex; | |
| 418 | + justify-content: space-between; | |
| 419 | + height: 24px; | |
| 420 | + // font-family: PingFangSC-Medium; | |
| 421 | + font-size: 16px; | |
| 422 | + color: #333333; | |
| 423 | + letter-spacing: -0.3px; | |
| 424 | + text-align: justify; | |
| 425 | + line-height: 24px; | |
| 426 | + margin-bottom: 18rpx; | |
| 427 | + .headRighted{ | |
| 428 | + width: 0; | |
| 429 | + height: 0; | |
| 430 | + border-left: 4px solid transparent; | |
| 431 | + border-right: 4px solid transparent; | |
| 432 | + border-bottom: 4px solid #CFCFCF; | |
| 433 | + transform: scaleY(-1); | |
| 434 | + margin-top: 10px; | |
| 435 | + } | |
| 436 | + .headMid{ | |
| 437 | + // font-family: PingFangSC-Regular; | |
| 438 | + font-size: 10px; | |
| 439 | + color: #999999; | |
| 440 | + letter-spacing: -0.19px; | |
| 441 | + margin-left: -120rpx; | |
| 442 | + } | |
| 443 | + .headRight{ | |
| 444 | + width: 0; | |
| 445 | + height: 0; | |
| 446 | + border-left: 4px solid transparent; | |
| 447 | + border-right: 4px solid transparent; | |
| 448 | + border-bottom: 4px solid #CFCFCF; | |
| 449 | + margin-top: 10px; | |
| 450 | + } | |
| 451 | + } | |
| 452 | + .body{ | |
| 453 | + // font-family: PingFangSC-Regular; | |
| 454 | + font-size: 12px; | |
| 455 | + color: #666666; | |
| 456 | + letter-spacing: 0; | |
| 457 | + .bodyBox{ | |
| 458 | + margin-top: 15px; | |
| 459 | + .names{ | |
| 460 | + // font-family: PingFangSC-Regular; | |
| 461 | + font-size: 12px; | |
| 462 | + color: #151515; | |
| 463 | + letter-spacing: 0; | |
| 464 | + text-align: justify; | |
| 465 | + line-height: 17px; | |
| 466 | + margin-left: 5px; | |
| 467 | + margin-right: 10px; | |
| 468 | + } | |
| 469 | + text{ | |
| 470 | + // font-family: PingFangSC-Regular; | |
| 471 | + font-size: 12px; | |
| 472 | + color: #666666; | |
| 473 | + letter-spacing: 0; | |
| 474 | + text-align: justify; | |
| 475 | + } | |
| 476 | + } | |
| 477 | + } | |
| 478 | + .goods-form { | |
| 479 | + display: flex; | |
| 480 | + flex-direction: column; | |
| 481 | + align-items: center; | |
| 482 | + justify-content: center; | |
| 483 | + background-color: #fff; | |
| 484 | + width: 100%; | |
| 485 | + .p1 { | |
| 486 | + font-size: 16px; | |
| 487 | + color: #333333; | |
| 488 | + letter-spacing: -0.3px; | |
| 489 | + text-align: justify; | |
| 490 | + line-height: 24px; | |
| 491 | + margin: 4px 0; | |
| 492 | + } | |
| 493 | + .p2 { | |
| 494 | + font-size: 12px; | |
| 495 | + color: #999999; | |
| 496 | + letter-spacing: -0.23px; | |
| 497 | + margin-bottom: 18rpx; | |
| 498 | + } | |
| 499 | + image{ | |
| 500 | + width: 28rpx; | |
| 501 | + height: 26rpx; | |
| 502 | + } | |
| 503 | + .confirm { | |
| 504 | + display: flex; | |
| 505 | + align-items: center; | |
| 506 | + font-size: 12px; | |
| 507 | + color: #666666; | |
| 508 | + letter-spacing: -0.23px; | |
| 509 | + width: 684rpx; | |
| 510 | + image{ | |
| 511 | + margin-right:25rpx; | |
| 512 | + } | |
| 513 | + } | |
| 514 | + .picker{ | |
| 515 | + display: flex; | |
| 516 | + flex-direction: column; | |
| 517 | + justify-content: center; | |
| 518 | + align-items: center; | |
| 519 | + width: 100%; | |
| 520 | + image{ | |
| 521 | + width: 10px; | |
| 522 | + height: 10px; | |
| 523 | + margin-right: 5px; | |
| 524 | + } | |
| 525 | + .picker-choice{ | |
| 526 | + display: flex; | |
| 527 | + width: 684rpx; | |
| 528 | + align-items: center; | |
| 529 | + margin-bottom: 40rpx; | |
| 530 | + .choice-left{ | |
| 531 | + width: 210rpx; | |
| 532 | + .p11 { | |
| 533 | + font-size: 14px; | |
| 534 | + color: #333333; | |
| 535 | + letter-spacing: -0.26px; | |
| 536 | + text-align: justify; | |
| 537 | + line-height: 24px; | |
| 538 | + } | |
| 539 | + .p12 { | |
| 540 | + font-size: 10px; | |
| 541 | + color: #3F3F3F; | |
| 542 | + letter-spacing: -0.19px; | |
| 543 | + text-align: justify; | |
| 544 | + line-height: 24px; | |
| 545 | + } | |
| 546 | + } | |
| 547 | + .p13 { | |
| 548 | + font-size: 10px; | |
| 549 | + color: #999999; | |
| 550 | + letter-spacing: -0.19px; | |
| 551 | + margin-right: 10px; | |
| 552 | + } | |
| 553 | + .p13-date { | |
| 554 | + font-size: 10px; | |
| 555 | + color: #999999; | |
| 556 | + letter-spacing: -0.19px; | |
| 557 | + margin-right: 5px; | |
| 558 | + } | |
| 559 | + .p14 { | |
| 560 | + font-size: 14px; | |
| 561 | + color: #666666; | |
| 562 | + letter-spacing: -0.26px; | |
| 563 | + text-align: center; | |
| 564 | + width: 124rpx; | |
| 565 | + border-bottom: 1px solid #CFCFCF; | |
| 566 | + } | |
| 567 | + } | |
| 568 | + } | |
| 259 | 569 | } |
| 260 | 570 | } |
| 571 | + } | |
| 261 | 572 | .choose{ |
| 262 | 573 | width: 100%; |
| 263 | 574 | background: #FFFFFF; | ... | ... |
src/static/icon-data.png
1.01 KB
src/static/icon-pen.png
896 Bytes
src/store/modules/address.js
| ... | ... | @@ -0,0 +1,71 @@ |
| 1 | +import urlAlias from '../url' | |
| 2 | +import request from '../request' | |
| 3 | + | |
| 4 | +const { editAddress, addressList, getAddress } = urlAlias | |
| 5 | + | |
| 6 | +const state = { list: [], detail: {} } | |
| 7 | + | |
| 8 | +const mutations = { | |
| 9 | + LIST: (state, list) => { | |
| 10 | + state.list = list | |
| 11 | + }, | |
| 12 | + DETAILS: (state, details) => { | |
| 13 | + state.details = details | |
| 14 | + } | |
| 15 | +} | |
| 16 | + | |
| 17 | +const actions = { | |
| 18 | + edit(mutations, param, success) { | |
| 19 | + request({ | |
| 20 | + url: editAddress, | |
| 21 | + data: param, | |
| 22 | + success, | |
| 23 | + fail: () => { | |
| 24 | + uni.showModal({ | |
| 25 | + content: '编辑失败', | |
| 26 | + showCancel: false | |
| 27 | + }) | |
| 28 | + }, | |
| 29 | + complete: (res) => { | |
| 30 | + console.log('complete status === > ', res) | |
| 31 | + } | |
| 32 | + }) | |
| 33 | + }, | |
| 34 | + list({ commit }) { | |
| 35 | + request({ | |
| 36 | + url: addressList, | |
| 37 | + success: (res) => { | |
| 38 | + commit('LIST', res.data.data) | |
| 39 | + }, | |
| 40 | + fail: () => { | |
| 41 | + uni.showModal({ | |
| 42 | + content: '获取地址列表失败', | |
| 43 | + showCancel: false | |
| 44 | + }) | |
| 45 | + } | |
| 46 | + }) | |
| 47 | + }, | |
| 48 | + details({ commit }, param, execute) { | |
| 49 | + return new Promise((resolve, reject) => request({ | |
| 50 | + url: getAddress, | |
| 51 | + data: param, | |
| 52 | + success: (res) => { | |
| 53 | + commit('DETAILS', res.data.data) | |
| 54 | + resolve() | |
| 55 | + }, | |
| 56 | + fail: () => { | |
| 57 | + uni.showModal({ | |
| 58 | + content: '获取地址信息失败', | |
| 59 | + showCancel: false | |
| 60 | + }) | |
| 61 | + } | |
| 62 | + })) | |
| 63 | + } | |
| 64 | +} | |
| 65 | + | |
| 66 | +export default { | |
| 67 | + namespaced: true, | |
| 68 | + state, | |
| 69 | + mutations, | |
| 70 | + actions | |
| 71 | +} | ... | ... |
src/store/modules/cart.js
src/store/modules/read.js
| ... | ... | @@ -6,12 +6,13 @@ |
| 6 | 6 | } = urlAlias; |
| 7 | 7 | |
| 8 | 8 | const state = { |
| 9 | - goodInfo: [], | |
| 9 | + goodInfo: {}, | |
| 10 | 10 | }; |
| 11 | 11 | |
| 12 | 12 | const mutations = { |
| 13 | 13 | INIT: (state, goodInfo) => { |
| 14 | 14 | state.goodInfo = goodInfo; |
| 15 | + | |
| 15 | 16 | }, |
| 16 | 17 | }; |
| 17 | 18 | |
| ... | ... | @@ -19,6 +20,7 @@ const actions = { |
| 19 | 20 | fetch({ commit }, param) { |
| 20 | 21 | request({ |
| 21 | 22 | url: read, |
| 23 | + data: param, | |
| 22 | 24 | success: (res) => { |
| 23 | 25 | commit('INIT', res.data.data) |
| 24 | 26 | }, | ... | ... |
src/store/request.js
src/store/url.js
| 1 | 1 | const urlAlias = { |
| 2 | - // 获取商品信息 | |
| 3 | - read: '/app/prod/read', | |
| 2 | + // 详情 | |
| 3 | + read: '/app/prod/read', // 获取商品信息 | |
| 4 | 4 | |
| 5 | 5 | // 首页 |
| 6 | 6 | shopList: '/app/prod/list', // 获取首页商品列表 |
| ... | ... | @@ -13,16 +13,21 @@ const urlAlias = { |
| 13 | 13 | |
| 14 | 14 | // 我的订单 |
| 15 | 15 | orderList: '/app/order/list', // 获取订单列表 |
| 16 | - | |
| 17 | - // 购物车 | |
| 18 | - cartList: '/app/cart/list', // 获取购物车列表 | |
| 19 | - | |
| 20 | - // 我的 | |
| 21 | - recommandList:'/app/prod/recommand', // 获取用户个性化推荐商品 | |
| 22 | - | |
| 16 | + | |
| 17 | + // 购物车 | |
| 18 | + cartList: '/app/cart/list', // 获取购物车列表 | |
| 19 | + | |
| 20 | + // 我的 | |
| 21 | + recommandList: '/app/prod/recommand', // 获取用户个性化推荐商品 | |
| 22 | + | |
| 23 | 23 | // 镜框选购页 |
| 24 | - detailStandardList: '/app/prod/read', //获取商品的详细信息 | |
| 25 | - | |
| 24 | + detailStandardList: '/app/prod/read', // 获取商品的详细信息 | |
| 25 | + | |
| 26 | + // 地址管理 | |
| 27 | + editAddress: '/app/address/edit_address', // 编辑地址 | |
| 28 | + addressList: '/app/address/get_address_list', // 获取用户地址列表 | |
| 29 | + getAddress: '/app/address/get_address_by_id' // 获取用户某一地址信息 | |
| 30 | + | |
| 26 | 31 | } |
| 27 | 32 | |
| 28 | -export default urlAlias; | |
| 33 | +export default urlAlias | ... | ... |