Vue页面开发和脚手架开发 Vue2集成ElementUI Vue3集成Element Plus

Element UI&&Element Plus

Element,一套为开发者、设计师和产品经理准备的基于 Vue 2.0 的桌面端组件库。https://element.eleme.cn/#/zh-CN/component/installation

Element Plus,基于 Vue 3,面向设计师和开发者的组件库。https://element-plus.org/zh-CN/#/zh-CN

Element UI安装: npm install element-ui --save

Element Plus安装: npm install element-plus --save

页面开发,Vue2集成ElementUI

复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.1" />
    <title>VUE2+ElementUI</title>
    <!-- 引入Element UI的CSS文件 -->
    <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
    <script src="https://unpkg.com/vue@2.6.14/dist/vue.min.js"></script>
    <!-- 引入Element UI的JavaScript库 -->
    <script src="https://unpkg.com/element-ui/lib/index.js"></script>
</head>

<body>
    <div id="root1" style="background-color: blueviolet;">
        <span>{{msg}}</span>
        <my-title></my-title>
        <user-info></user-info>
    </div>
    <script>
        // 全局组件
        const component1 = Vue.extend({
            template : '<h2>关于VUE的页面</h2>'
        });
        Vue.component('my-title',component1);
        // 局部组件
        const userComponent1 = Vue.extend({
            template: `<div>
                            <p>姓名:{{name}},年龄:{{age}}</p>
                            <el-button type="primary" icon="el-icon-warning" @click='info'>信息</el-button>
                       </div> `,
            data(){
                return {
                    name:'古怪今人',
                    age:'43'
                }
            },
            methods:{
                info(){
                    alert('这里是信息呀~');
                }
            }
        });
        // 实例
        const vueApp1 = new Vue({
            el: '#root1',
            data:{
                msg:'hello vue2!'
            },
            components:{
                'user-info': userComponent1
            }
        });
    </script>
</body>

</html>

页面开发,Vue3集成Element Plus

复制代码
<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width,initial-scale=1.1" />
    <title>VUE3</title>
    <!-- 引入Element Plus的CSS文件 -->
    <link rel="stylesheet" href="https://unpkg.com/element-plus/dist/index.css">
    <script src="https://unpkg.com/vue@3/dist/vue.global.js"></script>
    <!-- 引入Element Plus的JavaScript文件 -->
    <script src="https://unpkg.com/element-plus"></script>
</head>

<body>
    <div id="root1" style="background-color: blueviolet;">
        <el-button type="primary" @click="handleClick1">点击我</el-button>
        <el-button type="info" @click="handleClick2">点击我</el-button>
        <span>{{msg}}</span>
        <my-title></my-title>
        <user-info></user-info>
    </div>
    <script>
        // 全局组件
        const component1 = {
            template: '<h2>关于VUE的页面</h2>'
        };
        // 局部组件
        const userComponent1 = {
            template: `<div>
                            <p>姓名:{{name}},年龄:{{age}}</p>
                            <el-button type="primary" @click='info'>信息</el-button>
                       </div> `,
            data() {
                return {
                    name: '古怪今人',
                    age: '43'
                }
            },
            methods: {
                info() {
                    alert('这里是信息呀~');
                }
            }
        };
        // 实例1
        const vueApp1 = Vue.createApp({
            setup() {
                // 定义点击事件处理函数
                const handleClick1 = () => {
                    alert('1、按钮被点击~');
                };
                return {
                    msg: 'hello vue3!',
                    handleClick1
                }
            },
            methods: {
                handleClick2(){
                    alert('2、按钮被点击~');
                }
            },
            components: {
                'user-info': userComponent1
            }
        });
        // 注册全局组件
        vueApp1.component("my-title", component1);
        // 使用Element Plus组件库
        vueApp1.use(ElementPlus);
        vueApp1.mount("#root1");
    </script>
</body>

</html>

Vue CLI脚手架开发,Vue2集成ElementUI

安装Vue CLI: npm install -g @vue/cli

Element UI安装: npm install element-ui --save

main.js

复制代码
import Vue from 'vue'
import App from './App.vue'


import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css'; 
Vue.use(ElementUI);


Vue.config.productionTip = false

new Vue({
  render: h => h(App),
}).$mount('#app')

App.vue

复制代码
<template>
    <div id="app">
        <el-button type="primary" @click="handleClick1">点击我</el-button>
    </div>
</template>

<script>

export default {
    name: 'App',
    components: {
        
    },
    methods:{
        handleClick1(){
            alert('按钮被点击~');
        }
    }
}
</script>

Vite脚手架开发,Vue3集成Element Plus

创建项目: npm init vite@latest <project-name> --template vue

Element Plus安装: npm install element-plus --save

main.js

复制代码
import { createApp } from 'vue'
import './style.css'
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')

App.vue

复制代码
<template>
    <div>
      <el-button type="primary" @click="handleClick1">点击我</el-button>
    </div>
</template>

<script setup>
    // 定义点击事件处理函数
    const handleClick1 = () => {
            alert('1、按钮被点击~');
    };
</script>
相关推荐
aircrushin14 小时前
Claude 5 之后,上下文工程该做减法了
前端·人工智能·后端
huabuyu14 小时前
CLS 自动化归因及自愈:让系统自己定位根因、修复并验证
前端·javascript
C++、Java和Python的菜鸟14 小时前
第13章 前端Web实战(Tlias案例)
前端·javascript·vue.js
用户69190268133914 小时前
React 组件间通信全解析:从父子到跨级
前端·javascript
echoVic14 小时前
同一个 bug,我在 WebGPU 渲染器里犯了两轮:一帧内多次写同一块 buffer
前端·webgl·图形学
胡萝卜术14 小时前
数据主权与渲染防线:从受控组件到性能优化的完整图景
前端·javascript·面试
DFT计算杂谈14 小时前
FeSe超薄膜在CaF2衬底上的电子结构DFT研究
java·服务器·前端
BreezeJiang14 小时前
父组件一更新,子组件就必须跟着更新吗?从 memo 走到 useCallback
前端·javascript
胡萝卜术14 小时前
复用与并行:从自定义 Hooks 封装状态逻辑,到 Web Worker 的多线程计算
前端·javascript·面试
circuitsosk14 小时前
长文本与高并发下的Token“瘦身”策略:Prompt压缩与上下文窗口优化
java·前端·python·prompt·上下文窗口·token优化