Vue开发实例(三)项目引入Element-UI

项目引入Element-UI

一、引入Element-UI

vue 复制代码
npm i element-ui --save
npm install element-ui -S

等待安装完成

二、注册组件

1、vue2使用element-ui

在main.js中注册

vue 复制代码
import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';
// Vue3不是这种语法,请注意
Vue.use(ElementUI);

vue2全部main.js代码

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

import ElementUI from 'element-ui';
import 'element-ui/lib/theme-chalk/index.css';

Vue.config.productionTip = false
Vue.use(ElementUI);

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

注意:在使用Vue3全局注册element的时候,发现错误如下:

Uncaught TypeError: Cannot read properties of undefined (reading 'prototype')

at eval (webpack-internal:///./node_modules/element-ui/lib/utils/types.js:39)

at Object.../node_modules/element-ui/lib/utils/types.js (chunk-vendors.js:2923)

at webpack_require (app.js:849)

at fn (app.js:151)

at eval (webpack-internal:///./node_modules/element-ui/lib/utils/util.js:19)

at Object.../node_modules/element-ui/lib/utils/util.js (chunk-vendors.js:2935)

at webpack_require (app.js:849)

at fn (app.js:151)

at eval (webpack-internal:///./node_modules/element-ui/lib/locale/format.js:49)

at Object.../node_modules/element-ui/lib/locale/format.js (chunk-vendors.js:2526)

那么如何解决呢,继续往下看...

2、vue3使用element-ui

vue3中使用element-plus,它对Vue3进行了支持。

vue 复制代码
npm install element-plus --save

vue3 在main.js注册element-plus

注意这里与Vue2的注册有些不一样,比如:

vue 复制代码
const app = createApp(App);

先创建app 在用 use

vue 复制代码
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')

三、使用Element组件

1、轻微改造

启动项目,正常显示即代表项目运行正常

改造项目代码

位置:HelloWorld.vue

vue 复制代码
<template>
  <div class="hello">
    <h1>{{ msg }}</h1>
  </div>
</template>

<script>
export default {
  name: 'HelloWorld',
  props: {
    msg: String
  }
}
</script>

<style scoped>
</style>

这样代码看上去比较简单,干净

2、验证element是否生效

vue 复制代码
<template>
  <div class="hello">
    <h1>{{ msg }}</h1>
    <el-button>这是一个按钮</el-button>
  </div>
</template>

<script>
export default {
  name: 'HelloWorld',
  props: {
    msg: String
  }
}
</script>

<style scoped>
</style>

从上面的页面可以看到,element注册成功了

相关推荐
孟孟~3 分钟前
npm run dev 报错:Error: error:0308010C:digital envelope routines::unsupported
前端·npm·node.js
孟孟~5 分钟前
npm install 报错:npm error: ...node_modules\deasync npm error command failed
前端·npm·node.js
狂炫一碗大米饭7 分钟前
一文打通TypeScript 泛型
前端·javascript·typescript
wh_xia_jun17 分钟前
在 Spring Boot 中使用 JSP
java·前端·spring boot
二十雨辰35 分钟前
[HTML5]快速掌握canvas
前端·html
tingkeiii1 小时前
【react+antd+vite】优雅的引入svg和阿里巴巴图标
前端·react.js·前端框架
清幽竹客1 小时前
vue-18(使用 Vuex 插件实现高级功能)
前端·vue.js·前端框架·vue
粥里有勺糖2 小时前
用Trae做了个公众号小工具
前端·ai编程·trae
QQ676580082 小时前
基于 PyTorch 的 VGG16 深度学习人脸识别检测系统的实现+ui界面
人工智能·pytorch·python·深度学习·ui·人脸识别
棉花糖超人2 小时前
【从0-1的HTML】第2篇:HTML标签
前端·html