【vue】初步使用element-ui框架

cd到当前项目,运行

cnpm i element-ui -S

接下来就是在项目里面引用了,打开src目录下的main.js

java 复制代码
//导入vue.js
import Vue from 'vue'
//导入下面2个组件
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
//导入App.vue根组件
import App from './App.vue'
//在导入Vue实例之前,要将element-ui插件加入到Vue中
Vue.use(ElementUI);
Vue.config.productionTip = false

new Vue({
  render: h => h(App),//渲染App根组件
}).$mount('#app')

子组件vue文件中

java 复制代码
<template>
//注意:要在最外层套一个div容器
  <div>
    <el-table
    <!--ref为一个元素或者子组件的应用 -->
    <!-- 组件中所有的ref都会放在$refs属性中>
        ref="multipleTable"
        :data="tableData"
        class="projectnew"
        style="width: 100%"
        @selection-change="handleSelectionChange">
      <el-table-column
          type="selection"
          width="55">
      </el-table-column>

      <el-table-column
          prop="name"
          label="项目名称"
          width="120">
      </el-table-column>

      <el-table-column
          property="leader"
          label="负责人"
          width="120">
      </el-table-column>

      <el-table-column
          property="app_name"
          label="应用名称"
          show-overflow-tooltip>
      </el-table-column>
    </el-table>
    <div style="margin-top: 20px">
      <el-button @click="toggleSelection()">Clear selection</el-button>
    </div>
  </div>
</template>

<script>
export default {
  name: "projectlistNew",
  data() {
    return {
      project_header: ["项目名称", "负责人", "应用名称"],
      tableData: [
        {name: "吊炸天的项目", leader: "飞天小子", app_name: "很牛逼的应用"},
        {name: "非常厉害的项目", leader: "小旋风", app_name: "很神秘的应用"},
        {name: "很完美的项目", leader: "阿童木", app_name: "666的应用"}
      ],
      // multipleTable:[],
    }
},
  methods: {
    toggleSelection(rows) {
      if (rows) {
        rows.forEach(row => {
          this.$refs.multipleTable.toggleRowSelection(row);
        });
      } else {
        this.$refs.multipleTable.clearSelection();
      }
    },
    handleSelectionChange(val) {
      this.multipleSelection = val;
      //在控制台打印日志
      console.log(this.multipleSelection)
    }
  }
}
</script>

<style scoped>
.projectnew {
  margin: 10px 500px;
}
</style>
相关推荐
鹏多多9 分钟前
用useTransition解决React性能卡顿问题+实战例子
前端·javascript·react.js
只愿云淡风清19 分钟前
ECharts地图数据压缩-ZigZag算法
前端·javascript·echarts
Moment27 分钟前
Node.js v25.0.0 发布——性能、Web 标准与安全性全面升级 🚀🚀🚀
前端·javascript·后端
全职计算机毕业设计30 分钟前
基于微信小程序的运动康复中心预约系统的设计与实现(SpringBoot+Vue+Uniapp)
vue.js·spring boot·微信小程序
专注前端30年36 分钟前
【JavaScript】every 方法的详解与实战
开发语言·前端·javascript
一天睡25小时1 小时前
想偷卷?但微信不支持md文档?这个软件助你!
前端·javascript
艾小码1 小时前
3个技巧让你彻底搞懂JavaScript异步编程
前端·javascript
Y42585 小时前
本地多语言切换具体操作代码
前端·javascript·vue.js
fruge7 小时前
React 2025 完全指南:核心原理、实战技巧与性能优化
javascript·react.js·性能优化
etsuyou8 小时前
js前端this指向规则
开发语言·前端·javascript