Browse Source

【集成】Tdesign组件库 并优化目录结构

master
xiaosi 1 year ago
parent
commit
ce1726ea3a
  1. 205
      package-lock.json
  2. 1
      package.json
  3. 93
      src/App.vue
  4. 4
      src/app.js
  5. 20
      src/main.js
  6. 245
      src/plugins/TDesign-vue.js

205
package-lock.json

@ -9,6 +9,7 @@
"version": "0.0.0",
"dependencies": {
"pinia": "^2.1.7",
"tdesign-vue-next": "^1.7.0",
"vue": "^3.3.4",
"vue-router": "^4.2.5"
},
@ -431,6 +432,17 @@
"@babel/core": "^7.0.0-0"
}
},
"node_modules/@babel/runtime": {
"version": "7.23.4",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.4.tgz",
"integrity": "sha512-2Yv65nlWnWlSpe3fXEyX5i7fx5kIKo4Qbcj+hMO0odwaneFjfXw5fdum+4yL20O0QiaHpia0cYQ9xpNMqrBwHg==",
"dependencies": {
"regenerator-runtime": "^0.14.0"
},
"engines": {
"node": ">=6.9.0"
}
},
"node_modules/@babel/template": {
"version": "7.22.15",
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz",
@ -1028,6 +1040,15 @@
"node": ">= 8"
}
},
"node_modules/@popperjs/core": {
"version": "2.11.8",
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
"integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==",
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/popperjs"
}
},
"node_modules/@rollup/pluginutils": {
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz",
@ -1070,6 +1091,26 @@
"dev": true,
"peer": true
},
"node_modules/@types/lodash": {
"version": "4.14.182",
"resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.182.tgz",
"integrity": "sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q=="
},
"node_modules/@types/sortablejs": {
"version": "1.15.7",
"resolved": "https://registry.npmjs.org/@types/sortablejs/-/sortablejs-1.15.7.tgz",
"integrity": "sha512-PvgWCx1Lbgm88FdQ6S7OGvLIjWS66mudKPlfdrWil0TjsO5zmoZmzoKiiwRShs1dwPgrlkr0N4ewuy0/+QUXYQ=="
},
"node_modules/@types/tinycolor2": {
"version": "1.4.6",
"resolved": "https://registry.npmjs.org/@types/tinycolor2/-/tinycolor2-1.4.6.tgz",
"integrity": "sha512-iEN8J0BoMnsWBqjVbWH/c0G0Hh7O21lpR2/+PrvAVgWdzL7eexIFm4JN/Wn10PTcmNdtS6U67r499mlWMXOxNw=="
},
"node_modules/@types/validator": {
"version": "13.11.7",
"resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.7.tgz",
"integrity": "sha512-q0JomTsJ2I5Mv7dhHhQLGjMvX0JJm5dyZ1DXQySIUzU1UlwzB8bt+R6+LODUbz0UDIOvEzGc28tk27gBJw2N8Q=="
},
"node_modules/@ungap/structured-clone": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
@ -1777,6 +1818,11 @@
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
"integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
},
"node_modules/dayjs": {
"version": "1.11.10",
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz",
"integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ=="
},
"node_modules/debug": {
"version": "4.3.4",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
@ -3693,8 +3739,7 @@
"node_modules/lodash": {
"version": "4.17.21",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
"dev": true
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
},
"node_modules/lodash.merge": {
"version": "4.6.2",
@ -3839,6 +3884,11 @@
"url": "https://github.com/sponsors/ljharb"
}
},
"node_modules/mitt": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz",
"integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw=="
},
"node_modules/ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@ -4332,6 +4382,11 @@
}
]
},
"node_modules/regenerator-runtime": {
"version": "0.14.0",
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz",
"integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA=="
},
"node_modules/regexp.prototype.flags": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz",
@ -4646,6 +4701,11 @@
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
"node_modules/sortablejs": {
"version": "1.15.0",
"resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz",
"integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w=="
},
"node_modules/source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@ -4848,6 +4908,40 @@
"integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==",
"dev": true
},
"node_modules/tdesign-icons-vue-next": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/tdesign-icons-vue-next/-/tdesign-icons-vue-next-0.2.2.tgz",
"integrity": "sha512-ZKleBME7ZF1IVgnRXmIBPjfNa2Mef1nrK56f2xwn1Aa5mvXxB3fSxEzwhObR7bhzf/K42mz/Knnbll5Y7vCBjg==",
"dependencies": {
"@babel/runtime": "^7.16.3"
},
"peerDependencies": {
"vue": "^3.0.0"
}
},
"node_modules/tdesign-vue-next": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/tdesign-vue-next/-/tdesign-vue-next-1.7.0.tgz",
"integrity": "sha512-NGt30cc0T2L32UoQjffldNy2wZAHa8vA1c7kjkjTEhHbD3O2bVuiDhPJSo8EYAwnRlwc5+EzzgiQxj/5x2b1qw==",
"dependencies": {
"@babel/runtime": "^7.22.6",
"@popperjs/core": "^2.11.8",
"@types/lodash": "4.14.182",
"@types/sortablejs": "^1.15.1",
"@types/tinycolor2": "^1.4.3",
"@types/validator": "^13.7.17",
"dayjs": "^1.11.9",
"lodash": "^4.17.21",
"mitt": "^3.0.1",
"sortablejs": "^1.15.0",
"tdesign-icons-vue-next": "^0.2.0",
"tinycolor2": "^1.6.0",
"validator": "^13.9.0"
},
"peerDependencies": {
"vue": ">=3.1.0"
}
},
"node_modules/terser": {
"version": "5.24.0",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz",
@ -4878,6 +4972,11 @@
"integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
"dev": true
},
"node_modules/tinycolor2": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz",
"integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw=="
},
"node_modules/to-fast-properties": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
@ -5089,6 +5188,14 @@
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
"dev": true
},
"node_modules/validator": {
"version": "13.11.0",
"resolved": "https://registry.npmjs.org/validator/-/validator-13.11.0.tgz",
"integrity": "sha512-Ii+sehpSfZy+At5nPdnyMhx78fEoPDkR2XW/zimHEL3MyGJQOCQ7WeP20jPYRz7ZCpcKLB21NxuXHF3bxjStBQ==",
"engines": {
"node": ">= 0.10"
}
},
"node_modules/vite": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/vite/-/vite-4.5.0.tgz",
@ -5728,6 +5835,14 @@
"@babel/plugin-syntax-typescript": "^7.23.3"
}
},
"@babel/runtime": {
"version": "7.23.4",
"resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.23.4.tgz",
"integrity": "sha512-2Yv65nlWnWlSpe3fXEyX5i7fx5kIKo4Qbcj+hMO0odwaneFjfXw5fdum+4yL20O0QiaHpia0cYQ9xpNMqrBwHg==",
"requires": {
"regenerator-runtime": "^0.14.0"
}
},
"@babel/template": {
"version": "7.22.15",
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.22.15.tgz",
@ -6068,6 +6183,11 @@
"fastq": "^1.6.0"
}
},
"@popperjs/core": {
"version": "2.11.8",
"resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz",
"integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A=="
},
"@rollup/pluginutils": {
"version": "4.2.1",
"resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-4.2.1.tgz",
@ -6107,6 +6227,26 @@
"dev": true,
"peer": true
},
"@types/lodash": {
"version": "4.14.182",
"resolved": "https://registry.npmjs.org/@types/lodash/-/lodash-4.14.182.tgz",
"integrity": "sha512-/THyiqyQAP9AfARo4pF+aCGcyiQ94tX/Is2I7HofNRqoYLgN1PBoOWu2/zTA5zMxzP5EFutMtWtGAFRKUe961Q=="
},
"@types/sortablejs": {
"version": "1.15.7",
"resolved": "https://registry.npmjs.org/@types/sortablejs/-/sortablejs-1.15.7.tgz",
"integrity": "sha512-PvgWCx1Lbgm88FdQ6S7OGvLIjWS66mudKPlfdrWil0TjsO5zmoZmzoKiiwRShs1dwPgrlkr0N4ewuy0/+QUXYQ=="
},
"@types/tinycolor2": {
"version": "1.4.6",
"resolved": "https://registry.npmjs.org/@types/tinycolor2/-/tinycolor2-1.4.6.tgz",
"integrity": "sha512-iEN8J0BoMnsWBqjVbWH/c0G0Hh7O21lpR2/+PrvAVgWdzL7eexIFm4JN/Wn10PTcmNdtS6U67r499mlWMXOxNw=="
},
"@types/validator": {
"version": "13.11.7",
"resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.11.7.tgz",
"integrity": "sha512-q0JomTsJ2I5Mv7dhHhQLGjMvX0JJm5dyZ1DXQySIUzU1UlwzB8bt+R6+LODUbz0UDIOvEzGc28tk27gBJw2N8Q=="
},
"@ungap/structured-clone": {
"version": "1.2.0",
"resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz",
@ -6637,6 +6777,11 @@
"resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.2.tgz",
"integrity": "sha512-I7K1Uu0MBPzaFKg4nI5Q7Vs2t+3gWWW648spaF+Rg7pI9ds18Ugn+lvg4SHczUdKlHI5LWBXyqfS8+DufyBsgQ=="
},
"dayjs": {
"version": "1.11.10",
"resolved": "https://registry.npmjs.org/dayjs/-/dayjs-1.11.10.tgz",
"integrity": "sha512-vjAczensTgRcqDERK0SR2XMwsF/tSvnvlv6VcF2GIhg6Sx4yOIt/irsr1RDJsKiIyBzJDpCoXiWWq28MqH2cnQ=="
},
"debug": {
"version": "4.3.4",
"resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz",
@ -8040,8 +8185,7 @@
"lodash": {
"version": "4.17.21",
"resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
"dev": true
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
},
"lodash.merge": {
"version": "4.6.2",
@ -8149,6 +8293,11 @@
"dev": true,
"peer": true
},
"mitt": {
"version": "3.0.1",
"resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz",
"integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw=="
},
"ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@ -8472,6 +8621,11 @@
"integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==",
"dev": true
},
"regenerator-runtime": {
"version": "0.14.0",
"resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.0.tgz",
"integrity": "sha512-srw17NI0TUWHuGa5CFGGmhfNIeja30WMBfbslPNhf6JrqQlLN5gcrvig1oqPxiVaXb0oW0XRKtH6Nngs5lKCIA=="
},
"regexp.prototype.flags": {
"version": "1.5.1",
"resolved": "https://registry.npmjs.org/regexp.prototype.flags/-/regexp.prototype.flags-1.5.1.tgz",
@ -8681,6 +8835,11 @@
}
}
},
"sortablejs": {
"version": "1.15.0",
"resolved": "https://registry.npmjs.org/sortablejs/-/sortablejs-1.15.0.tgz",
"integrity": "sha512-bv9qgVMjUMf89wAvM6AxVvS/4MX3sPeN0+agqShejLU5z5GX4C75ow1O2e5k4L6XItUyAK3gH6AxSbXrOM5e8w=="
},
"source-map": {
"version": "0.6.1",
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz",
@ -8819,6 +8978,34 @@
"integrity": "sha512-ovssysQTa+luh7A5Weu3Rta6FJlFBBbInjOh722LIt6klpU2/HtdUbszju/G4devcvk8PGt7FCLv5wftu3THUA==",
"dev": true
},
"tdesign-icons-vue-next": {
"version": "0.2.2",
"resolved": "https://registry.npmjs.org/tdesign-icons-vue-next/-/tdesign-icons-vue-next-0.2.2.tgz",
"integrity": "sha512-ZKleBME7ZF1IVgnRXmIBPjfNa2Mef1nrK56f2xwn1Aa5mvXxB3fSxEzwhObR7bhzf/K42mz/Knnbll5Y7vCBjg==",
"requires": {
"@babel/runtime": "^7.16.3"
}
},
"tdesign-vue-next": {
"version": "1.7.0",
"resolved": "https://registry.npmjs.org/tdesign-vue-next/-/tdesign-vue-next-1.7.0.tgz",
"integrity": "sha512-NGt30cc0T2L32UoQjffldNy2wZAHa8vA1c7kjkjTEhHbD3O2bVuiDhPJSo8EYAwnRlwc5+EzzgiQxj/5x2b1qw==",
"requires": {
"@babel/runtime": "^7.22.6",
"@popperjs/core": "^2.11.8",
"@types/lodash": "4.14.182",
"@types/sortablejs": "^1.15.1",
"@types/tinycolor2": "^1.4.3",
"@types/validator": "^13.7.17",
"dayjs": "^1.11.9",
"lodash": "^4.17.21",
"mitt": "^3.0.1",
"sortablejs": "^1.15.0",
"tdesign-icons-vue-next": "^0.2.0",
"tinycolor2": "^1.6.0",
"validator": "^13.9.0"
}
},
"terser": {
"version": "5.24.0",
"resolved": "https://registry.npmjs.org/terser/-/terser-5.24.0.tgz",
@ -8845,6 +9032,11 @@
"integrity": "sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==",
"dev": true
},
"tinycolor2": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.6.0.tgz",
"integrity": "sha512-XPaBkWQJdsf3pLKJV9p4qN/S+fm2Oj8AIPo1BTUhg5oxkvm9+SVEGFdhyOz7tTdUTfvxMiAs4sp6/eZO2Ew+pw=="
},
"to-fast-properties": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz",
@ -8996,6 +9188,11 @@
"integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==",
"dev": true
},
"validator": {
"version": "13.11.0",
"resolved": "https://registry.npmjs.org/validator/-/validator-13.11.0.tgz",
"integrity": "sha512-Ii+sehpSfZy+At5nPdnyMhx78fEoPDkR2XW/zimHEL3MyGJQOCQ7WeP20jPYRz7ZCpcKLB21NxuXHF3bxjStBQ=="
},
"vite": {
"version": "4.5.0",
"resolved": "https://registry.npmjs.org/vite/-/vite-4.5.0.tgz",

1
package.json

@ -11,6 +11,7 @@
},
"dependencies": {
"pinia": "^2.1.7",
"tdesign-vue-next": "^1.7.0",
"vue": "^3.3.4",
"vue-router": "^4.2.5"
},

93
src/App.vue

@ -1,85 +1,18 @@
<script setup>
import {RouterLink, RouterView} from 'vue-router'
import HelloWorld from './components/HelloWorld.vue'
import { computed } from 'vue';
import { useRoute } from 'vue-router';
import ExampleView from '@/views/ExampleView/ExampleView.vue';
const route = useRoute();
const currentContainer = computed(() => {
const { name } = route;
if (!name) return null;
const { [name]: view } = { ExampleView };
return view || null;
});
</script>
<template>
<header>
<img alt="Vue logo" class="logo" src="@/assets/logo.svg" width="125" height="125"/>
<div class="wrapper">
<HelloWorld msg="You did it!"/>
<nav>
<RouterLink to="/">Home</RouterLink>
<RouterLink to="/about">About</RouterLink>
</nav>
</div>
</header>
<RouterView/>
<component :is="currentContainer" />
</template>
<style scoped>
header {
line-height: 1.5;
max-height: 100vh;
}
.logo {
display: block;
margin: 0 auto 2rem;
}
nav {
width: 100%;
font-size: 12px;
text-align: center;
margin-top: 2rem;
}
nav a.router-link-exact-active {
color: var(--color-text);
}
nav a.router-link-exact-active:hover {
background-color: transparent;
}
nav a {
display: inline-block;
padding: 0 1rem;
border-left: 1px solid var(--color-border);
}
nav a:first-of-type {
border: 0;
}
@media (min-width: 1024px) {
header {
display: flex;
place-items: center;
padding-right: calc(var(--section-gap) / 2);
}
.logo {
margin: 0 2rem 0 0;
}
header .wrapper {
display: flex;
place-items: flex-start;
flex-wrap: wrap;
}
nav {
text-align: left;
margin-left: -1rem;
font-size: 1rem;
padding: 1rem 0;
margin-top: 1rem;
}
}
</style>

4
src/app.js

@ -0,0 +1,4 @@
import { createApp } from 'vue';
import App from './App.vue';
export default createApp(App);

20
src/main.js

@ -1,14 +1,10 @@
import './assets/main.css'
import app from '@/app';
import store from '@/stores';
import router from '@/router';
import TDesignVue from '@/plugins/TDesign-vue'; // TDesign按需引入
import {createApp} from 'vue'
import {createPinia} from 'pinia'
app.use(store);
app.use(router);
app.use(TDesignVue);
import App from './App.vue'
import router from './router'
const app = createApp(App)
app.use(createPinia())
app.use(router)
app.mount('#app')
app.mount('#app');

245
src/plugins/TDesign-vue.js

@ -0,0 +1,245 @@
/**
* TDesign-vue
*/
// 引入组件库的少量全局样式变量
import 'tdesign-vue-next/es/style/index.css';
import {
Button,
Tabs,
TabPanel,
Icon,
Link,
Col,
Row,
Aside,
Content,
Footer,
Header,
Layout,
Divider,
Space,
Affix,
Anchor,
AnchorItem,
AnchorTarget,
Breadcrumb,
BreadcrumbItem,
Dropdown,
DropdownItem,
DropdownMenu,
HeadMenu,
Menu,
MenuGroup,
MenuItem,
Submenu,
Pagination,
PaginationMini,
StepItem,
Steps,
StickyItem,
StickyTool,
BackTop,
AutoComplete,
HighlightOption,
Cascader,
CascaderPanel,
Checkbox,
CheckboxGroup,
DatePicker,
DatePickerPanel,
DateRangePicker,
DateRangePickerPanel,
Form,
FormItem,
InputAdornment,
Input,
InputGroup,
InputNumber,
Radio,
RadioButton,
RadioGroup,
Option,
OptionGroup,
Select,
Slider,
SliderButton,
Switch,
TagInput,
SelectInput,
Textarea,
Transfer,
TimePicker,
TimePickerPanel,
TimeRangePicker,
TreeSelect,
ColorPicker,
ColorPickerPanel,
RangeInput,
RangeInputPopup,
Avatar,
AvatarGroup,
Badge,
Calendar,
Card,
Comment,
Image,
ImageViewer,
List,
ListItem,
ListItemMeta,
Progress,
Skeleton,
Swiper,
SwiperItem,
BaseTable,
EnhancedTable,
PrimaryTable,
Table,
CheckTag,
Tag,
Timeline,
TimelineItem,
Tooltip,
Tree,
Collapse,
CollapsePanel,
Watermark,
Rate,
Alert,
DialogPlugin,
Dialog,
Drawer,
Guide,
LoadingPlugin,
Loading,
// MessagePlugin,
Message,
NotifyPlugin,
Notification,
Popconfirm,
Popup,
Upload,
ConfigProvider,
} from 'tdesign-vue-next';
export default {
install: (app) => {
// 在这里编写插件代码
app.use(Button);
app.use(Tabs);
app.use(TabPanel);
app.use(Icon);
app.use(Link);
app.use(Col);
app.use(Row);
app.use(Aside);
app.use(Content);
app.use(Footer);
app.use(Header);
app.use(Layout);
app.use(Divider);
app.use(Space);
app.use(Affix);
app.use(Anchor);
app.use(AnchorItem);
app.use(AnchorTarget);
app.use(Breadcrumb);
app.use(BreadcrumbItem);
app.use(Dropdown);
app.use(DropdownItem);
app.use(DropdownMenu);
app.use(HeadMenu);
app.use(Menu);
app.use(MenuGroup);
app.use(MenuItem);
app.use(Submenu);
app.use(Pagination);
app.use(PaginationMini);
app.use(StepItem);
app.use(Steps);
app.use(StickyItem);
app.use(StickyTool);
app.use(BackTop);
app.use(AutoComplete);
app.use(HighlightOption);
app.use(Cascader);
app.use(CascaderPanel);
app.use(Checkbox);
app.use(CheckboxGroup);
app.use(DatePicker);
app.use(DatePickerPanel);
app.use(DateRangePicker);
app.use(DateRangePickerPanel);
app.use(Form);
app.use(FormItem);
app.use(InputAdornment);
app.use(Input);
app.use(InputGroup);
app.use(InputNumber);
app.use(Radio);
app.use(RadioButton);
app.use(RadioGroup);
app.use(Option);
app.use(OptionGroup);
app.use(Select);
app.use(Slider);
app.use(SliderButton);
app.use(Switch);
app.use(TagInput);
app.use(SelectInput);
app.use(Textarea);
app.use(Transfer);
app.use(TimePicker);
app.use(TimePickerPanel);
app.use(TimeRangePicker);
app.use(TreeSelect);
app.use(ColorPicker);
app.use(ColorPickerPanel);
app.use(RangeInput);
app.use(RangeInputPopup);
app.use(Avatar);
app.use(AvatarGroup);
app.use(Badge);
app.use(Calendar);
app.use(Card);
app.use(Comment);
app.use(Image);
app.use(ImageViewer);
app.use(List);
app.use(ListItem);
app.use(ListItemMeta);
app.use(Progress);
app.use(Skeleton);
app.use(Swiper);
app.use(SwiperItem);
app.use(BaseTable);
app.use(EnhancedTable);
app.use(PrimaryTable);
app.use(Table);
app.use(CheckTag);
app.use(Tag);
app.use(Timeline);
app.use(TimelineItem);
app.use(Tooltip);
app.use(Tree);
app.use(Collapse);
app.use(CollapsePanel);
app.use(Watermark);
app.use(Rate);
app.use(Alert);
app.use(DialogPlugin);
app.use(Dialog);
app.use(Drawer);
app.use(Guide);
app.use(LoadingPlugin);
app.use(Loading);
// app.use(MessagePlugin);
app.use(Message);
app.use(NotifyPlugin);
app.use(Notification);
app.use(Popconfirm);
app.use(Popup);
app.use(Upload);
app.use(ConfigProvider);
},
};
Loading…
Cancel
Save