elememt-ui按需引入组件报错

本文介绍如何在基于Vue CLI 3的项目中正确配置按需加载Element UI组件的方法,包括解决babel编译错误的具体步骤。

背景:基于vue-cli3搭建的项目,按需引入报错

按照官方文档,按需引入组件,如下:
1.安装:npm install babel-plugin-component -D
2.在babel.config.js中修改配置

module.exports = {
  presets: [["es2015", { modules: false }]],
  plugins: [
    [
      "component",
      {
        libraryName: "element-ui",
        styleLibraryName: "theme-chalk",
      },
    ],
  ],
};

3.运行后babel编译报错:
Cannot find module ‘babel-preset-es2015’
4.查询文档发现这么一句:
该 preset 不推荐使用。如果你想保持最新,请使用 env preset
5.解决办法:
1)安装 npm install --save-dev @babel/preset-env
2)修改babel.config.js中"es2015" 为"@babel/preset-env"
3) 重新编译,成功

官网链接参考:https://babel.docschina.org/docs/en/6.26.3/babel-preset-es2015/

在 Element-UI 的 `el-table` 组件中,筛选功能通过 `filterHandler` 函数实现。该函数会在用户触发筛选操作时被调用,并接收三个参数:`value`、`row` 和 `column`。这些参数分别代表用户选择的筛选值、当前行的数据对象,以及当前列的配置信息。 - `value`:表示用户选择的筛选条件值。例如,在一个下拉筛选中,该值可能为某个选项的标签或标识符。 - `row`:表示当前行的数据对象,即该行绑定的原始数据。可以通过该参数访问行内其他字段的值,用于更复杂的筛选逻辑。 - `column`:表示当前列的 `column` 对象,包含列的属性信息,例如列的 `property`(字段名)、`label`(列标题)等。这个参数对于处理多列筛选或要访问列配置的场景非常有用。例如,可以通过 `column.property` 获取当前列绑定的字段名,从而对不同的列应用不同的筛选逻辑 [^1]。 以下是一个简单的示例,展示如何在 `filterHandler` 中使用这些参数: ```vue <template> <el-table :data="tableData" style="width: 100%"> <el-table-column prop="name" label="姓名" :filters="[{ text: '张三', value: '张三' }, { text: '李四', value: '李四' }]" :filter-method="filterHandler" ></el-table-column> <el-table-column prop="age" label="年龄" :filters="[{ text: '大于20', value: '20' }]" :filter-method="filterHandler" ></el-table-column> </el-table> </template> <script> export default { data() { return { tableData: [ { name: '张三', age: 25 }, { name: '李四', age: 18 }, { name: '王五', age: 30 } ] }; }, methods: { filterHandler(value, row, column) { const { property } = column; if (property === 'name') { return row.name === value; } else if (property === 'age') { return row.age > parseInt(value); } return true; } } }; </script> ``` 在这个示例中,`column` 参数用于判断当前筛选的是哪一列,从而执行不同的筛选逻辑。对于“姓名”列,直接比较 `row.name` 和 `value`;而对于“年龄”列,则判断 `row.age` 是否大于 `value`。这样,`column` 参数帮助实现了针对不同列的不同筛选策略 [^1]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值