关于vxe-table全局引入的问题

这篇具有很好参考价值的文章主要介绍了关于vxe-table全局引入的问题。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

主要讲解一下vxe-table全局引入然后使用碰到的问题
0:vxe-table的官网地址
1:基本环境
(1):vue版本为3.x以上(我的是3.2.13)
(2): 依赖库:xe-utils
注意:这篇博客的是vue3的脚手架搭建的,如果需要看低版本,请点击这里
2:使用npm安装

npm install xe-utils vxe-table@next      // 官网最标准的
yarn add xe-utils vxe-table              //   yarn (不推荐)

3:package.json文件里面就会有以下内容

"dependencies": {
    "vue": "^3.2.13",
    "vxe-table": "^4.2.8",
    "xe-utils": "^3.5.4"
  },

4:走过上面的那部分,将官网的以下代码复制给main.js文件中

import { App, createApp } = 'vue'
import 'xe-utils'
import VXETable from 'vxe-table'
import 'vxe-table/lib/style.css'

function useTable (app: App) {
  app.use(VXETable)
  // 给 vue 实例挂载内部对象,例如:
  // app.config.globalProperties.$XModal = VXETable.modal
  // app.config.globalProperties.$XPrint = VXETable.print
  // app.config.globalProperties.$XSaveFile = VXETable.saveFile
  // app.config.globalProperties.$XReadFile = VXETable.readFile
}
 createApp(App).use(useTable).mount('#app')

5:本来以为就可以了,但是不出意外的话就出意外了,简单改造后的代码为

import { createApp } from 'vue'  
import App from './App.vue'
//***********main.js中添加修改的代码*************
import Vue from 'vue'
import 'xe-utils'
import VXETable from 'vxe-table'
import 'vxe-table/lib/style.css'
Vue.use(VXETable);
//**********************end**********************
const app = createApp(App)
app.use(ant);
app.mount('#app');
```bash

6:在第五步的基础上,保存运行项目的话报如下错误
Uncaught TypeError: Cannot read properties of undefined (reading ‘use’)
at eval (main.js?fbea:11:1)

7:main.js最终版本

import { createApp } from 'vue'
import ant from 'ant-design-vue'
import App from './App.vue'
import 'ant-design-vue/dist/antd.css'

import Vue from 'vue'
import 'xe-utils'
import VXETable from 'vxe-table'
import 'vxe-table/lib/style.css'
const app = createApp(App)
app.use(ant);
app.use(VXETable); // 因为Vue是一个undefind,将Vue改成了app.use就可以了
// 注意:这个use要在挂载app的前面,不然vxe-table的数据会一直报undefined
app.mount('#app');

8:简单的demo代码(随便新建一个vue页面的代码)

<template>
  <div>
    <vxe-table :data="tableData">
      <vxe-column type="seq" title="Seq" width="60"></vxe-column>
      <vxe-column field="name" title="Name"></vxe-column>
      <vxe-column field="role" title="Role"></vxe-column>
      <vxe-colgroup title="Group1">
        <vxe-column field="sex" title="Sex"></vxe-column>
        <vxe-column field="address" title="Address"></vxe-column>
      </vxe-colgroup>
    </vxe-table>
  </div>
</template>

<script >
import { defineComponent, ref } from 'vue'

export default defineComponent({
  setup () {
    const tableData = ref([
      { id: 10001, name: 'Test1', role: 'Develop', sex: 'Man', address: 'Shenzhen' },
      { id: 10002, name: 'Test2', role: 'Test', sex: 'Man', address: 'Guangzhou' },
      { id: 10003, name: 'Test3', role: 'PM', sex: 'Man', address: 'Shanghai' }
    ])
    return {
      tableData
    }
  }
})
</script>

9:最终效果
could not install from

原因:在Vue3 中,通过使用 createApp 函数来创建应用,使用vue库的createApp方法才会生成vm,vm才能调用use,而不是直接使用Vue。老实说,这个官网全局导入写的过于简单了,就有点懵逼,踩坑记录一下。
10:参考文章(排序不分先后)
(1):vxe-table官网:https://vxetable.cn/#/table/start/install
(2):vxe-table 使用示例及其安装指南:https://gitee.com/xuliangzhan_admin/vxe-table-demo#%E5%AE%89%E8%A3%85%E6%8C%87%E5%8D%97
(3):githup安装示例:https://github.com/x-extends/vxe-table文章来源地址https://www.toymoban.com/news/detail-674138.html

到了这里,关于关于vxe-table全局引入的问题的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vue最强table vxe-table 虚拟滚动列表 前端导出

    最近遇到个问题。后台一次性返回2万条列表数据。 并且需求要求所有数据必须全部展示,不能做假分页(不能优化了)。 这些数据的直接来源就是CS客户端。 他们做CS客户端就是一次性加载几万条数据不分页(说这是客户的要求)。 我体验了一把CS客户端,数万条数据放在

    2024年02月12日
    浏览(41)
  • vue表格插件vxe-table导出 excel

    vxe-table 默认支持导出 CSV、HTML、XML、TXT格式的文件,不支持 xlsx 文件 要想导出 xlsx 文件,需要使用 vxe-table-plugin-export-xlsx 依赖  参考:https://cnpmjs.org/package/vxe-table-plugin-export-xlsx/v/2.1.0-beta 1.安装  例子: 如果用最新版的,依赖,这样使用就会报错 Uncaught (in promise) 亲测2.2.2版

    2024年01月22日
    浏览(48)
  • vxe-table表格合并单元格和编辑

    //这是在vue上面引用vxe-table插件实现的,主要方法都设置在table中,mergeCells,tableData都是在vue页面的data初使化数据, :footer-method=“footerMethod”:尾部数据,:merge-footer-items=“mergeCells”:尾部合并单元格。vxe-table网址:https://vxetable.cn/#/table/advanced/footerSpan

    2023年04月09日
    浏览(46)
  • Vue3 vxe-table 手写鼠标区域选中

    参考原文地址:vxe-table 鼠标滑动选择多行,鼠标区域选中批量操作[2]-CSDN博客 准备vxe-talbe@4.5.7,Vue@3.3.4,在原作者的基础上进行了修改,修改后和官网几乎无差别,允许左右侧固定列选中,允许任意范围选中,但是键盘监听功能没添加//感觉没啥软用.... 先看效果: 正常鼠标从左上往右下

    2024年02月05日
    浏览(56)
  • 前端基础(Element、vxe-table组件库的使用)

    前言:在前端项目中,实际上,会用到组件库里的很多组件,本博客主要介绍Element、vxe-table这两个组件如何使用。 目录 Element 引入element 使用组件的步骤 使用对话框的示例代码 效果展示  vxe-table 引入vxe-table 成果展示 总结 官网地址 Button 按钮 | Element Plus (element-plus.org) 在m

    2024年02月10日
    浏览(42)
  • vxe-table 鼠标滑动选择多行,鼠标区域选中批量操作

    该功能存在bug哦,移步我的新博客:vxe-table 鼠标滑动选择多行,鼠标区域选中批量操作[2]_wanghanlu_的博客-CSDN博客 在看vxe-table 文档时,发现一个功能,鼠标区域选中,觉得这个功能很好。  但是仔细发现,这个功能不是免费的。我就想想,为啥不能自己实现呢。 下面给你看看我的最终

    2024年02月15日
    浏览(44)
  • vxe-table 鼠标滑动选择多行,鼠标区域选中批量操作[2]

    前几天写了一个关于 vxe-table 鼠标滑动选择多行 的博客,在项目上线的过程中,发现这个功能还是有点bug,在经过我对vxe-table pro版本 的演示后vxe-table PRO,认真调试后,终于解决了bug,并且这个功能和pro版本可以说是几乎一模一样。注意:我是说这个滑动选择的功能,不是说是

    2024年02月05日
    浏览(158)
  • vue3 + vxe-table 封装通用Grid业务组件

    视频DEMO 功能 基于vxe-table v4 / vxe-grid 全局注册组件 无需单独引入 动态按需引入样式vite-plugin-style-import 支持传入高度 | 默认自适应高度 自定义表头 slot,实现下拉、区间、日期,并对表头参数进行校验(数字、长度、指定格式等) 自定义工具栏工具列,重写自定义列配置项,实现拖拽

    2023年04月08日
    浏览(50)
  • vxe-table 小众但功能齐全的vue表格组件

    一个基于 vue 的 PC 端表格组件,除了一般表格支持的增删改查、排序、筛选、对比、树形结构、数据分页等,它还支持虚拟滚动、懒加载、打印导出、虚拟列表、虚拟滚动、模态窗口、自定义模板、渲染器、贼灵活的配置项、扩展接口等,特别是能支持类似excel表格操作方式

    2024年02月08日
    浏览(49)
  • 记录贴:vxe-table单元格合并规则的简单封装及应用

    本文仅做为个人记录。 虚拟渲染与单元格合并,可以通过设置参数 merge-cells 或调用函数 setMergeCells、setMergeCells 来控制单元格的临时合并状态 (注:合并是以牺牲渲染性能为代价,如果需要用合并建议关闭虚拟滚动) 针对多层级的数组对象处理,以对象某个属性为准(此处

    2024年02月02日
    浏览(104)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包