阅读量:0
在 Vue 2 中,我们通常使用 Element UI,而在 Vue 3 中,我们则使用 Element Plus 作为其官方推荐的替代品。尽管 Element UI 和 Element Plus 提供了相似的组件库,但它们在 Vue 2 和 Vue 3 的上下文中可能会有细微的差别。对于 Card 卡片组件,以下将分别介绍 Vue 2 下的 Element UI Card 和 Vue 3 下的 Element Plus Card 的属性、事件和方法(注意,Card 组件通常不直接提供方法供外部调用,主要通过属性和事件进行交互)。
Vue 2 + Element UI Card
属性(Props)
header
: 卡片头部内容,支持字符串或渲染函数。body-style
: 卡片内容区的自定义样式。shadow
: 是否显示阴影,默认为always
(始终显示),可选值还有hover
(鼠标悬浮时显示)、never
(从不显示)。- 以及其他可能用于布局或样式的自定义类名或属性。
事件(Events)
- Element UI 的 Card 组件通常不直接提供事件,因为它主要是用于展示信息的静态组件。
方法(通常不直接暴露)
- Card 组件不直接提供方法供外部调用。
示例
<template> <el-card :header="headerText" body-style="padding: 20px;" :shadow="shadowType"> <p>卡片内容...</p> </el-card> </template> <script> export default { data() { return { headerText: '卡片标题', shadowType: 'always', // 可以改为 'hover' 或 'never' }; }, }; </script>
Vue 3 + Element Plus Card
属性(Props)
header
: 卡片头部内容,支持字符串或自定义插槽。body-style
: 卡片内容区的自定义样式。shadow
: 是否显示阴影,可选值包括'always'
,'hover'
,'never'
。border
: 是否显示边框,默认为true
。- 以及其他可能用于布局或样式的自定义类名或属性。
事件(Events)
- Element Plus 的 Card 组件同样通常不直接提供事件,因为它主要是用于展示信息的静态组件。
方法(通常不直接暴露)
- Card 组件不直接提供方法供外部调用。
示例
<template> <el-card header="卡片标题" :body-style="{ padding: '20px' }" :shadow="shadowType" :border="true"> <p>卡片内容...</p> </el-card> </template> <script> import { ref } from 'vue'; export default { setup() { const shadowType = ref('always'); // 可以根据需要修改为 'hover' 或 'never' return { shadowType, }; }, }; </script>
请注意,在 Vue 3 示例中,我使用了 Vue 3 的 Composition API (setup
函数和 ref
函数) 来定义响应式数据。然而,对于简单的用例,你仍然可以使用 Vue 3 的 Options API(类似于 Vue 2 的方式),这取决于你的个人偏好和项目需求。
此外,由于 Card 组件主要是用于展示信息的,因此它通常不提供复杂的事件或方法供外部调用。如果你需要在卡片上执行一些操作,你可能需要将这些操作放在卡片内部的子组件或按钮上,并通过它们来触发事件或方法。