diff --git a/.vscode/settings.json b/.vscode/settings.json index 8f05c236..4dd8cce1 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -116,15 +116,21 @@ // ================ Eslint =================== // =========================================== "eslint.enable": true, // 是否开启eslint - "eslint.options": { // 配置 - "plugins": ["html", "vue", "javascript", "jsx", "typescript"] + "plugins": [ + "html", + "vue", + "javascript", + "jsx", + "typescript" + ] }, "eslint.autoFixOnSave": true, // 保存自动格式化 // =========================================== // ================ Vetur ==================== // =========================================== + "vetur.experimental.templateInterpolationService": true, "vetur.format.options.tabSize": 2, "vetur.format.defaultFormatter.html": "js-beautify-html", // 使用js-beautify-html格式化 "vetur.format.defaultFormatter.scss": "prettier", // 使用js-beautify-html格式化 @@ -244,7 +250,9 @@ "[markdown]": { "editor.defaultFormatter": "esbenp.prettier-vscode" }, - "cSpell.words": ["yfboilerplate"], + "cSpell.words": [ + "yfboilerplate" + ], "editor.codeActionsOnSave": { "source.fixAll.eslint": true } diff --git a/src/components/Transition/index.ts b/src/components/Transition/index.ts index 2fe5683d..a184a9dd 100644 --- a/src/components/Transition/index.ts +++ b/src/components/Transition/index.ts @@ -1,11 +1,12 @@ -import { - // createSimpleTransition, - createJavascriptTransition, -} from './src/CreateTransition'; +// import { +// // createSimpleTransition, +// createJavascriptTransition, +// } from './src/CreateTransition'; -import ExpandTransitionGenerator from './src/ExpandTransition'; +// import ExpandTransitionGenerator from './src/ExpandTransition'; export { default as CollapseTransition } from './src/CollapseTransition'; +// export { default as CollapseTransition } from './src/CollapseTransition'; // export const FadeTransition = createSimpleTransition('fade-transition'); // export const ScaleTransition = createSimpleTransition('scale-transition'); @@ -20,12 +21,14 @@ export { default as CollapseTransition } from './src/CollapseTransition'; // export const ScaleRotateTransition = createSimpleTransition('scale-rotate-transition'); // Javascript transitions -export const ExpandTransition = createJavascriptTransition( - 'expand-transition', - ExpandTransitionGenerator() -); +// export const ExpandTransition = createJavascriptTransition( +// 'expand-transition', +// ExpandTransitionGenerator() +// ); // export const ExpandXTransition = createJavascriptTransition( // 'expand-x-transition', // ExpandTransitionGenerator('', true) // ); + +export { default as ExpandTransition } from './src/ExpandTransition.vue'; diff --git a/src/components/Transition/src/CollapseTransition.tsx b/src/components/Transition/src/CollapseTransition.tsx index 949c43b4..45be5886 100644 --- a/src/components/Transition/src/CollapseTransition.tsx +++ b/src/components/Transition/src/CollapseTransition.tsx @@ -1,29 +1,16 @@ -import type { PropType } from 'vue'; - // collapse 展开折叠 import { defineComponent } from 'vue'; import { getSlot } from '/@/utils/helper/tsxHelper'; -import { createJavascriptTransition } from './CreateTransition'; -import ExpandTransitionGenerator from './ExpandTransition'; +// import { createJavascriptTransition } from './CreateTransition'; +import ExpandTransition from './ExpandTransition.vue'; -export const ExpandTransition = createJavascriptTransition( - 'expand-transition', - ExpandTransitionGenerator() -); +// export const ExpandTransition = createJavascriptTransition( +// 'expand-transition', +// ExpandTransitionGenerator() +// ); export default defineComponent({ name: 'CollapseTransition', - components: { - ExpandTransition, - }, - props: { - // 是否打开折叠功能 - enable: { - type: Boolean as PropType, - default: true, - }, - }, - setup(props, { slots }) { - return () => - props.enable ? {() => getSlot(slots)} : getSlot(slots); + setup(_, { slots }) { + return () => {() => getSlot(slots)}; }, }); diff --git a/src/components/Transition/src/ExpandTransition.ts b/src/components/Transition/src/ExpandTransition.ts index fec4caa8..2aaef9a7 100644 --- a/src/components/Transition/src/ExpandTransition.ts +++ b/src/components/Transition/src/ExpandTransition.ts @@ -34,9 +34,9 @@ export default function (expandedParentClass = '', x = false) { el.style.setProperty('transition', 'none', 'important'); el.style.overflow = 'hidden'; - const offset = `${el[offsetProperty]}px`; + // const offset = `${el[offsetProperty]}px`; - el.style[sizeProperty] = '0'; + // el.style[sizeProperty] = '0'; void el.offsetHeight; // force reflow @@ -47,7 +47,7 @@ export default function (expandedParentClass = '', x = false) { } requestAnimationFrame(() => { - el.style[sizeProperty] = offset; + // el.style[sizeProperty] = offset; }); }, @@ -84,6 +84,6 @@ export default function (expandedParentClass = '', x = false) { const size = el._initialStyle[sizeProperty]; el.style.overflow = el._initialStyle.overflow!; if (size != null) el.style[sizeProperty] = size; - delete (el as any)._initialStyle; + Reflect.deleteProperty(el, '_initialStyle'); } } diff --git a/src/components/Transition/src/ExpandTransition.vue b/src/components/Transition/src/ExpandTransition.vue new file mode 100644 index 00000000..725ccc7a --- /dev/null +++ b/src/components/Transition/src/ExpandTransition.vue @@ -0,0 +1,85 @@ + + +