在 Vue 3 中引入 Element Plus 并注册 el-form
和 el-form-item
组件的步骤如下:
-
安装 Element Plus: 如果你还没有安装 Element Plus,可以使用 npm 或 yarn 来安装它:
或者npm install element-plus --save
yarn add element-plus
-
引入 Element Plus: 在你的 Vue 项目的入口文件(通常是
main.js
或main.ts
)中,引入 Element Plus 并注册为 Vue 插件:// main.js 或 main.ts import { createApp } from 'vue' import App from './App.vue' import ElementPlus from 'element-plus' import 'element-plus/dist/index.css' const app = createApp(App) app.use(ElementPlus) app.mount('#app')
-
在组件中使用: 在你的 Vue 组件中,你可以直接使用
el-form
和el-form-item
组件,不需要额外的导入和注册步骤,因为它们已经通过插件注册到了全局。
<template>
<el-form ref="form" :model="form" :rules="rules">
<el-form-item label="邮箱" prop="email">
<el-input v-model="form.email"></el-input>
</el-form-item>
<el-form-item label="密码" prop="password">
<el-input type="password" v-model="form.password"></el-input>
</el-form-item>
<el-button type="primary" @click="submitForm">登录</el-button>
</el-form>
</template>
<script>
import { ref } from 'vue'
export default {
setup() {
const form = ref({
email: '',
password: ''
})
const rules = ref({
email: [
{ required: true, message: '请输入邮箱地址', trigger: 'blur' },
{ type: 'email', message: '请输入正确的邮箱地址', trigger: ['blur', 'change'] }
],
password: [
{ required: true, message: '请输入密码', trigger: 'blur' },
{ min: 6, message: '密码长度不能小于6位', trigger: 'blur' }
]
})
const formRef = ref(null)
const submitForm = () => {
formRef.value.validate((valid) => {
if (valid) {
console.log('验证成功', form.value)
} else {
console.log('验证失败')
return false
}
})
}
return {
form,
rules,
formRef,
submitForm
}
}
}
</script>
在上面的代码中,我们创建了一个表单,包含两个表单项:邮箱和密码。我们使用 v-model
来双向绑定输入数据,并定义了一些基本的验证规则。submitForm
方法用于触发表单验证。
请注意,Element Plus 是为 Vue 3 设计的,如果你正在使用 Vue 2,那么应该使用 Element UI。在 Vue 3 项目中,你应该使用 Element Plus。