自学内容网 自学内容网

【区分vue2和vue3下的element UI Card 卡片组件,分别详细介绍属性,事件,方法如何使用,并举例】

在 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 组件主要是用于展示信息的,因此它通常不提供复杂的事件或方法供外部调用。如果你需要在卡片上执行一些操作,你可能需要将这些操作放在卡片内部的子组件或按钮上,并通过它们来触发事件或方法。


原文地址:https://blog.csdn.net/xiejunlan/article/details/140370740

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!