使用 vxe-table 來格式化任意的金額格式,支持導出與復制單元格格式到 excel

使用 vxe-table 來格式化任意的金額格式,支持導出與復制單元格格式到 excel

查看官網:https://vxetable.cn
gitbub:https://github.com/x-extends/vxe-table
gitee:https://gitee.com/x-extends/vxe-table

安裝

npm install vxe-pc-ui@4.5.23 vxe-table@4.13.4
import VxeUIAll from 'vxe-pc-ui'
import 'vxe-pc-ui/lib/style.css'
import VxeUITable from 'vxe-table'
import 'vxe-table/lib/style.css'createApp(App).use(VxeUIAll).use(VxeUITable).mount('#app')

格式化金額

通過內置的 FormatNumberInput 格式化數值渲染器,配置 type = amount 為貨幣類型就可以了

在這里插入圖片描述

<template><div><vxe-grid v-bind="gridOptions"></vxe-grid></div>
</template><script setup>
import { reactive } from 'vue'const gridOptions = reactive({border: true,height: 500,showOverflow: true,columns: [{ type: 'seq', width: 60 },{ field: 'name', title: '名字' },{ field: 'num1', title: '貨幣類型', align: 'right', cellRender: { name: 'FormatNumberInput', props: { type: 'amount', align: 'right' } } },{ field: 'num2', title: '貨幣類型(帶貨幣符號)', align: 'right', cellRender: { name: 'FormatNumberInput', props: { type: 'amount', align: 'right', showCurrency: true } } },{ field: 'num3', title: '貨幣類型(負數自動標紅)', align: 'right', cellRender: { name: 'FormatNumberInput', showNegativeStatus: true, props: { type: 'amount', align: 'right', showCurrency: true } } }],data: [{ id: 10001, name: '張三', code1: '0002365', code2: '0002365', num1: -3.56, num2: -3.56, num3: -3.56, num4: -3.56, str1: '10,000,000.00', str2: '10,000,000.00' },{ id: 10002, name: '李四', code1: '0002465', code2: '0002465', num1: 1, num2: 1, num3: 1, num4: 1, str1: '90,000,000.00', str2: '90,000,000.00' },{ id: 10003, name: '老六', code1: '0002567', code2: '0002567', num1: 1235640, num2: 1235640, num3: 1235640, num4: 1235640, str1: '100,000', str2: '100,000' },{ id: 10004, name: '小李', code1: '0678865', code2: '0678865', num1: -96300000.4, num2: -96300000.4, num3: -96300000.4, num4: -96300000.4, str1: '', str2: '' },{ id: 10005, name: '老萬', code1: '23470565', code2: '23470565', num1: 240.63, num2: 240.63, num3: 240.63, num4: 240.63, str1: '', str2: '' },{ id: 10006, name: '小劉', code1: '086222135', code2: '086222135', num1: 0.1, num2: 0.1, num3: 0.1, num4: 0.1, str1: '', str2: '' },{ id: 10007, name: '老徐', code1: '3600665', code2: '3600665', num1: 0, num2: 0, num3: 0, num4: 0, str1: '330.02', str2: '330.02' },{ id: 10008, name: '老二', code1: '009635', code2: '009635', num1: null, num2: null, num3: null, num4: null, str1: '10,000,000.33', str2: '10,000,000.33' },{ id: 10009, name: '小牛', code1: '09034523', code2: '09034523', num1: 100000000, num2: 100000000, num3: 100000000, num4: 100000000, str1: '', str2: '' },{ id: 10010, name: '小帥', code1: '872220222', code2: '872220222', num1: null, num2: null, num3: null, num4: null, str1: '1,230.30', str2: '1,230.30' },{ id: 10011, name: '老魏', code1: '10022354', code2: '10022354', num1: 96342, num2: 96342, num3: 96342, num4: 96342, str1: '', str2: '' },{ id: 10012, name: '小徐', code1: '0009785', code2: '0009785', num1: -740000, num2: -740000, num3: -740000, num4: -740000, str1: '', str2: '' }]
})
</script>

導出到 excel

支持導出分組表頭、合并、單元格類型、導出圖片等格式
在這里插入圖片描述

<template><div><vxe-button status="primary" @click="exportEvent">高級導出</vxe-button><vxe-grid ref="gridRef" v-bind="gridOptions"></vxe-grid></div>
</template><script setup>
import { ref, reactive } from 'vue';const gridRef = ref();const imgUrlCellRender = reactive({name: 'VxeImage',props: {width: 36,height: 36}
});const gridOptions = reactive({border: true,showFooter: true,showOverflow: true,editConfig: {trigger: 'click',mode: 'cell'},mergeCells: [{ row: 0, col: 2, rowspan: 1, colspan: 2 },{ row: 2, col: 2, rowspan: 2, colspan: 1 }],exportConfig: {type: 'xlsx'},columns: [{ field: 'checkbox', type: 'checkbox', width: 70 },{ field: 'seq', type: 'seq', width: 70 },{ field: 'name', title: 'Name', editRender: { name: 'VxeInput' } },{ field: 'code', title: '字符串類型', cellType: 'string', editRender: { name: 'VxeInput' } },{title: '分組1',children: [{ field: 'num1', title: '數值', editRender: { name: 'VxeNumberInput', props: { type: 'float' } } },{ field: 'num2', title: '數值(負數標紅)', editRender: { name: 'VxeNumberInput', showNegativeStatus: true, props: { type: 'float' } } }]},{ field: 'amount1', title: '貨幣', editRender: { name: 'VxeNumberInput', props: { type: 'amount', showCurrency: true } } },{ field: 'amount2', title: '貨幣(負數標紅)', editRender: { name: 'VxeNumberInput', showNegativeStatus: true, props: { type: 'amount', showCurrency: true } } },{ field: 'imgUrl', title: '圖片', width: 80, cellRender: imgUrlCellRender }],data: [{ id: 10001, name: '張三', code: '000528697411', num1: 0.32, num2: -0.11, amount1: 1000000000, amount2: -0.11, imgUrl: 'https://vxeui.com/resource/img/fj586.png' },{ id: 10002, name: '李四', code: '001236598563', num1: null, num2: 100000, amount1: -990000, amount2: 4, imgUrl: 'https://vxeui.com/resource/img/fj573.jpeg' },{ id: 10003, name: '王五', code: '001499675653', num1: 100000, num2: null, amount1: 1, amount2: 100000, imgUrl: 'https://vxeui.com/resource/img/fj567.jpeg' },{ id: 10004, name: '老六', code: '002568967545', num1: -0.11, num2: 1000000000, amount1: null, amount2: 1000000000, imgUrl: 'https://vxeui.com/resource/img/fj577.jpg' },{ id: 10005, name: '小七', code: '005233368777', num1: -990000, num2: 28, amount1: 100000, amount2: null, imgUrl: 'https://vxeui.com/resource/img/bq673.gif' },{ id: 10006, name: '小八', code: '000369877575', num1: 1000000000, num2: -990000, amount1: -0.11, amount2: -990000, imgUrl: 'https://vxeui.com/resource/img/fj124.jpeg' }],footerData: [{ checkbox: '合計', name: '12人', no1: 356 }]
});const exportEvent = () => {const $grid = gridRef.value;if ($grid) {$grid.openExport();}
};
</script>

復制到 excel(企業版)

在這里插入圖片描述

<template><div><vxe-grid v-bind="gridOptions"></vxe-grid></div>
</template><script setup>
import { reactive } from 'vue'const gridOptions = reactive({border: true,height: 500,showOverflow: true,mouseConfig: {area: true // 是否開啟區域選取},keyboardConfig: {isClip: true,isArrow: true,isShift: true,isTab: true,isEnter: true,isFNR: true // 是否開啟查找與替換},columns: [{ type: 'seq', width: 60 },{ field: 'name', title: '名字' },{ field: 'num1', title: '貨幣類型', align: 'right', cellRender: { name: 'FormatNumberInput', props: { type: 'amount', align: 'right' } } },{ field: 'num2', title: '貨幣類型(帶貨幣符號)', align: 'right', cellRender: { name: 'FormatNumberInput', props: { type: 'amount', align: 'right', showCurrency: true } } },{ field: 'num3', title: '貨幣類型(負數自動標紅)', align: 'right', cellRender: { name: 'FormatNumberInput', showNegativeStatus: true, props: { type: 'amount', align: 'right', showCurrency: true } } }],data: [{ id: 10001, name: '張三', code1: '0002365', code2: '0002365', num1: -3.56, num2: -3.56, num3: -3.56, num4: -3.56, str1: '10,000,000.00', str2: '10,000,000.00' },{ id: 10002, name: '李四', code1: '0002465', code2: '0002465', num1: 1, num2: 1, num3: 1, num4: 1, str1: '90,000,000.00', str2: '90,000,000.00' },{ id: 10003, name: '老六', code1: '0002567', code2: '0002567', num1: 1235640, num2: 1235640, num3: 1235640, num4: 1235640, str1: '100,000', str2: '100,000' },{ id: 10004, name: '小李', code1: '0678865', code2: '0678865', num1: -96300000.4, num2: -96300000.4, num3: -96300000.4, num4: -96300000.4, str1: '', str2: '' },{ id: 10005, name: '老萬', code1: '23470565', code2: '23470565', num1: 240.63, num2: 240.63, num3: 240.63, num4: 240.63, str1: '', str2: '' },{ id: 10006, name: '小劉', code1: '086222135', code2: '086222135', num1: 0.1, num2: 0.1, num3: 0.1, num4: 0.1, str1: '', str2: '' },{ id: 10007, name: '老徐', code1: '3600665', code2: '3600665', num1: 0, num2: 0, num3: 0, num4: 0, str1: '330.02', str2: '330.02' },{ id: 10008, name: '老二', code1: '009635', code2: '009635', num1: null, num2: null, num3: null, num4: null, str1: '10,000,000.33', str2: '10,000,000.33' },{ id: 10009, name: '小牛', code1: '09034523', code2: '09034523', num1: 100000000, num2: 100000000, num3: 100000000, num4: 100000000, str1: '', str2: '' },{ id: 10010, name: '小帥', code1: '872220222', code2: '872220222', num1: null, num2: null, num3: null, num4: null, str1: '1,230.30', str2: '1,230.30' },{ id: 10011, name: '老魏', code1: '10022354', code2: '10022354', num1: 96342, num2: 96342, num3: 96342, num4: 96342, str1: '', str2: '' },{ id: 10012, name: '小徐', code1: '0009785', code2: '0009785', num1: -740000, num2: -740000, num3: -740000, num4: -740000, str1: '', str2: '' }]
})
</script>

https://gitee.com/x-extends/vxe-table

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/pingmian/77194.shtml
繁體地址,請注明出處:http://hk.pswp.cn/pingmian/77194.shtml
英文地址,請注明出處:http://en.pswp.cn/pingmian/77194.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

知識圖譜 數據準備

任何類型的數據格式都可以用于構建知識圖譜&#xff0c;只要能夠從中提取出實體&#xff08;Entities&#xff09;、關系&#xff08;Relationships&#xff09;和屬性&#xff08;Attributes&#xff09;。但實際操作中&#xff0c;不同數據格式的處理難度、工具支持和效率差異…

Docker 設置鏡像源后仍無法拉取鏡像問題排查

#記錄工作 Windows系統 在使用 Docker 的過程中&#xff0c;許多用戶會碰到設置了國內鏡像源后&#xff0c;依舊無法拉取鏡像的情況。接下來&#xff0c;記錄了操作要點以及問題排查方法&#xff0c;幫助我們順利解決這類問題。 Microsoft Windows [Version 10.0.27823.1000…

如何對Flutter應用程序進行單元測試

Flutter單元測試完全指南&#xff1a;從基礎到高級實踐 面試求職資源 面試試題小程序&#xff1a;涵蓋測試基礎、Linux操作系統、MySQL數據庫、Web功能測試、接口測試、APPium移動端測試、Python知識、Selenium自動化測試相關、性能測試、計算機網絡知識、Jmeter、HR面試等內…

go中我遇到的問題總結

go問題總結 1 - go中的nil等于java中的null嗎 在 Go 和 Java 中,nil 和 null 都用于表示“空值”,但它們的實現和使用方式有所不同。 以下是 Go 中的 nil 和 Java 中的 null 之間的對比: 1. Go 中的 nil 在 Go 中,nil 是一個預定義的常量,表示零值。它的行為根據數據類…

【android telecom 框架分析 01】【基本介紹 2】【BluetoothPhoneService為何沒有源碼實現】

1. 背景 我們會在很多資料上看到 BluetoothPhoneService 類&#xff0c;但是我們在實際 aosp 中確找不到具體的實現&#xff0c; 這是為何&#xff1f; 這是一個很好的問題&#xff01;雖然在車載藍牙電話場景中我們經常提到類似 BluetoothPhoneService 的概念&#xff0c;但…

微機控制電液伺服汽車減震器動態試驗系統

微機控制電液伺服汽車減震器動態試驗系統&#xff0c;用于對汽車筒式減震器、減震器臺架、駕駛室減震裝置、發動機懸置軟墊總成、發動機前置楔形支撐總成等的示功圖試驗、速度特性試驗。 主要的技術參數&#xff1a; 1、最大試驗力&#xff1a;5kN&#xff1b; 2、試驗力測量精…

STM32+dht11+rc522+jq8400的簡單使用

1.dht11的使用 硬件&#xff1a;3v3&#xff0c;gnd&#xff0c;data數據線接一個gpio&#xff0c;三根線即可 軟件&#xff1a; ①dht11.c #include "dht11.h" #include "delay.h" #include "stdbool.h"static STRUCT_DHT11_TYPEDEF dht11;…

AOSP的Doze模式-DeepIdle 初識

前言 從Android 6.0開始&#xff0c;谷歌引入了Doze模式(打盹模式)的省電技術延長電池使用時間。如果用戶長時間未使用設備&#xff0c;低電耗模式會延遲應用后臺 CPU 和網絡活動&#xff0c;從而延長電池續航時間。根據第三方測試顯示&#xff0c;兩臺同樣的Nexus 5&#xff…

用Python Pandas高效操作數據庫:從查詢到寫入的完整指南

一、環境準備與數據庫連接 1.1 安裝依賴庫 pip install pandas sqlalchemy psycopg2 # PostgreSQL # 或 pip install pandas sqlalchemy pymysql # MySQL # 或 pip install pandas sqlalchemy # SQLite 1.2 創建數據庫引擎 通過SQLAlchemy創建統一接口&#xff1a…

每日一題(小白)暴力娛樂篇31

首先分析一下題意&#xff0c;需要求出2024的因子&#xff0c;因為我們要求與2024互質的數字&#xff0c;為什么呢&#xff1f;因為我們要求互質說直白點就是我和你兩個人沒有中間人&#xff0c;我們是自然而然認識的&#xff0c;那我們怎么認識呢&#xff0c;就是直接見面對吧…

電控---printf重定向輸出

在嵌入式系統開發中&#xff0c;printf 重定向輸出是將標準輸出&#xff08;stdout&#xff09;從默認設備&#xff08;如主機終端&#xff09;重新映射到嵌入式設備的特定硬件接口&#xff08;如串口、LCD、USB等&#xff09;的過程。 一、核心原理&#xff1a;標準IO庫的底層…

快速認識:數據庫、數倉(數據倉庫)、數據湖與數據運河

數據技術核心概念對比表 概念核心定義核心功能數據特征典型技術/工具核心應用場景數據庫結構化數據的「電子檔案柜」&#xff0c;按固定 schema 存儲和管理數據&#xff0c;支持高效讀寫和事務處理。實時事務處理&#xff08;增刪改查&#xff09;&#xff0c;確保數據一致性&…

【17】數據結構之圖的遍歷篇章

目錄標題 圖的遍歷深度優先遍歷 Depth First Search廣度優先遍歷 Breadth First Search 圖的遍歷 從圖中某一個頂點出發&#xff0c;沿著一些邊訪遍圖中所有的頂點&#xff0c;且使用每個頂點僅被訪問一次&#xff0c;這個過程稱為圖的遍歷.Graph Traversal. 其中&#xff0c…

簡單接口工具(ApiCraft-Web)

ApiCraft-Web 項目介紹 ApiCraft-Web 是一個輕量級的 API 測試工具&#xff0c;提供了簡潔直觀的界面&#xff0c;幫助開發者快速測試和調試 HTTP 接口。 功能特點 支持多種 HTTP 請求方法&#xff08;GET、POST、PUT、DELETE&#xff09;可配置請求參數&#xff08;Query …

Git進階操作

Git高階操作完全指南&#xff1a;解鎖專業開發工作流 前言 在當今的軟件開發領域&#xff0c;掌握高級Git技能已成為區分普通開發者與專業開發者的關鍵因素。根據最新的GitHub數據&#xff0c;熟練應用交互式暫存和Rebase等高級功能的開發者&#xff0c;其代碼審查通過率平均提…

Python結合AI生成圖像藝術作品代碼及介紹

為實現生成圖像藝術作品&#xff0c;我選用 Stable Diffusion 庫結合 Python 編寫代碼。下面先展示代碼&#xff0c;再詳細介紹其原理、模塊及使用方法等內容。 生成圖片代碼 import torch from diffusers import StableDiffusionPipeline# 加載預訓練模型 pipe StableDiffu…

Linux操作系統--靜態庫和動態庫的生成and四種解決加載找不到動態庫的四種方法

目錄 必要的知識儲備&#xff1a; 生成靜態庫&#xff1a; 生成動態庫&#xff1a; 解決加載找不到動態庫的四種方法&#xff1a; 第一種&#xff1a;拷貝到系統默認的庫路徑 /usr/lib64/ 第二種&#xff1a;在系統默認的庫路徑/usr/lib64/下建立軟鏈接 第三種&#xff1…

LLM中的N-Gram、TF-IDF和Word embedding

文章目錄 1. N-Gram和TF-IDF&#xff1a;通俗易懂的解析1.1 N-Gram&#xff1a;讓AI學會"猜詞"的技術1.1.1 基本概念1.1.2 工作原理1.1.3 常見類型1.1.4 應用場景1.1.5 優缺點 1.2 TF-IDF&#xff1a;衡量詞語重要性的尺子1.2.1 基本概念1.2.2 計算公式1.2.3 為什么需…

Leetcode 3359. 查找最大元素不超過 K 的有序子矩陣【Plus題】

1.題目基本信息 1.1.題目描述 給定一個大小為 m x n 的二維矩陣 grid。同時給定一個 非負整數 k。 返回滿足下列條件的 grid 的子矩陣數量&#xff1a; 子矩陣中最大的元素 小于等于 k。 子矩陣的每一行都以 非遞增 順序排序。 矩陣的子矩陣 (x1, y1, x2, y2) 是通過選擇…

如何在 Ubuntu 22.04 上安裝、配置、使用 Nginx

如何在 Ubuntu 22.04 上安裝、配置、使用 Nginx&#xff1f;-阿里云開發者社區 更新應用 sudo apt updatesudo apt upgrade檢查必要依賴并安裝 sudo apt install -y curl gnupg2 ca-certificates lsb-release安裝nginx sudo apt install -y nginx# 啟動nginx sudo systemct…