最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vue?el-table實現(xiàn)動態(tài)添加行和列具體代碼

 更新時間:2023年09月15日 11:39:36   作者:別拿曾經(jīng)看以后~  
最近遇到一個動態(tài)增加行和列的需求,所以這里給大家總結(jié)下,這篇文章主要給大家介紹了關(guān)于vue?el-table實現(xiàn)動態(tài)添加行和列的相關(guān)資料,需要的朋友可以參考下

實現(xiàn)思路:

最近遇到一個動態(tài)增加行和列的需求,本來拿到需求的時候想用el-table中自帶的方法去實現(xiàn)的,但是經(jīng)過嘗試發(fā)現(xiàn)不能滿足想要實現(xiàn)的需求。沒辦法只能在el-table的基礎(chǔ)上自己寫原生。

大概思路如下:

1.首先把table中需要動態(tài)增加的行和列分開,分別定義一個數(shù)組dataList存放新增行數(shù)據(jù),定義數(shù)組columnList存放新增列數(shù)據(jù)。

2.其次在指定列的數(shù)據(jù)前面加新增按鈕,點擊新增按鈕的時候請求接口拿到數(shù)據(jù)。

3.然后把拿到的數(shù)據(jù)處理,把表格內(nèi)容的數(shù)據(jù)push到dataList中,把表頭內(nèi)容數(shù)據(jù)push到columnList中。注意如果接口沒有返回表頭數(shù)據(jù),則需要自己根據(jù)具體需求創(chuàng)造對應(yīng)列的key-value存入columnList中。

(1)行可以直接添加在現(xiàn)有行后面展示,也可以在指定行的后面新增行。比如:在第一行后面新增行,則使用splice添加。splice(指定行,0,添加的新行數(shù)據(jù))

(2)點擊哪行則在哪行后面添加新行。思路:獲取到當(dāng)前點擊行的索引,使用splice添加。splice(指定行,0,添加的新行數(shù)據(jù))

4.最后把dataList給el-table的:data="dataList"使用,columnList給使用

5.以上是新增行和列的思路。如果想刪除行和列的話,則需要通過splice或slice操作dataList和columnList即可。刪除指定的索引位置。

大致代碼如下:

<el-table :data="dataList">
	<el-table-column label="姓名" prop="name"></el-table-column>
	<!--動態(tài)列-->
	<el-table-column v-for="(it, index) in columnList" :key="index" :label="it.label">
		<!--動態(tài)行-->
		<template slot-scope="scope">
			<i class="el-icon-circle-plus-outline" @click="handleAddRow(scope.row, scope.$index)" />
			<span>{{scope.row.value}}</span>
			// 根據(jù)項目需求進(jìn)行其他邏輯處理
		</template>
	</el-table-column>
</el-table>
export default {
	data() {
		return {
			dataList: [], // 表格數(shù)據(jù)
			columnList: [], //表頭數(shù)據(jù)
		}
	},
	methods: {
		// 動態(tài)增加行
		async handleAddRow(row, index) {
			const data = await this.接口()
			data.forEach(d => {
				// 列添加
				this.columnList.push({ label: '年齡' })
				// 行添加
			    this.dataList.splice(index, 0, d)
			})
		}
	}
}

結(jié)語:

以上是el-table動態(tài)添加行和列的大概思路,大家可以作為參考,再結(jié)合具體需求細(xì)化?。?!

補充:vue實現(xiàn)el-table表頭自定義

Vue.js 是一個流行的JavaScript框架,它的數(shù)據(jù)綁定和組件化特性使得開發(fā)動態(tài)Web應(yīng)用變得更加容易。其中,強大的UI組件庫(如Element,iView等)能夠極大地提高Web應(yīng)用開發(fā)效率。而el-table是一種用于展示表格數(shù)據(jù)的組件,它擁有可排序、過濾、分頁等多種功能。本文主要介紹如何使用Vue.js實現(xiàn)el-table表頭自定義。

在Vue.js中使用el-table組件時,表頭(thead)用于顯示列名和控制排序、過濾等操作。默認(rèn)情況下,el-table組件根據(jù)數(shù)據(jù)源中的列名自動生成表頭。若需自定義表頭,可通過以下方式實現(xiàn):

  • 使用el-table-column組件

在el-table中使用el-table-column組件可以實現(xiàn)自定義表頭。具體操作如下:

<el-table :data="tableData">
  <el-table-column prop="date" label="日期"></el-table-column>
  <el-table-column prop="name" label="姓名"></el-table-column>
  <el-table-column prop="address" label="地址"></el-table-column>
</el-table>

上述代碼中,我們?yōu)閑l-table添加了三個el-table-column組件,分別對應(yīng)表格中的三列數(shù)據(jù)。同時,我們在每個el-table-column組件上指定了prop和label屬性,其中prop屬性指定了對應(yīng)的數(shù)據(jù)源中的字段名,label屬性指定了表頭標(biāo)題。

  • 使用Scoped Slots

如果需要實現(xiàn)更加復(fù)雜的表頭,可以使用Scoped Slots進(jìn)行自定義。具體操作如下:

<el-table :data="tableData">
  <template slot="header">
    <el-row>
      <el-col :span="8">日期</el-col>
      <el-col :span="8">姓名</el-col>
      <el-col :span="8">地址</el-col>
    </el-row>
  </template>
  <el-table-column prop="date"></el-table-column>
  <el-table-column prop="name"></el-table-column>
  <el-table-column prop="address"></el-table-column>
</el-table>

上述代碼中,我們使用了el-table的header slot,它可以讓我們自定義表頭,即在表頭中添加任意HTML代碼。在header slot中我們使用了el-row和el-col組件創(chuàng)建了一個表頭行,然后通過span屬性設(shè)置每列所占的寬度,最終實現(xiàn)了自定義表頭。

到此這篇關(guān)于vue el-table實現(xiàn)動態(tài)添加行和列的文章就介紹到這了,更多相關(guān)el-table動態(tài)添加行和列內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Spring boot 和Vue開發(fā)中CORS跨域問題解決

    Spring boot 和Vue開發(fā)中CORS跨域問題解決

    這篇文章主要介紹了Spring boot 和Vue開發(fā)中CORS跨域問題解決,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-09-09
  • vue中的h函數(shù)使用及說明

    vue中的h函數(shù)使用及說明

    這篇文章主要介紹了vue中的h函數(shù)使用及說明,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • Vue中組件命名與引用過程

    Vue中組件命名與引用過程

    Vue組件命名在引入和引用時因大小寫轉(zhuǎn)換規(guī)則差異,PascalCase用于JS定義,kebab-case用于模板,Vue會自動映射,推薦統(tǒng)一使用短橫線命名,單文件組件(SFC)整合模板、腳本和樣式,結(jié)構(gòu)清晰,是Vue項目的核心組織方式
    2025-07-07
  • 封裝一個更易用的Dialog組件過程詳解

    封裝一個更易用的Dialog組件過程詳解

    這篇文章主要為大家介紹了封裝一個更易用的Dialog組件過程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-05-05
  • 7個很棒的Vue開發(fā)技巧分享

    7個很棒的Vue開發(fā)技巧分享

    這篇文章主要為大家整理了7個很棒的Vue開發(fā)技巧,可以幫助大家更好的理解和使用vue框架。文中的示例代碼講解詳細(xì),感興趣的可以了解一下
    2023-02-02
  • Vue使用json-server進(jìn)行后端數(shù)據(jù)模擬功能

    Vue使用json-server進(jìn)行后端數(shù)據(jù)模擬功能

    這篇文章主要介紹了Vue使用json-server進(jìn)行后端數(shù)據(jù)模擬功能,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2018-04-04
  • 解決vue項目,npm run build后,報路徑錯的問題

    解決vue項目,npm run build后,報路徑錯的問題

    這篇文章主要介紹了解決vue項目,npm run build后,報路徑錯的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-08-08
  • vue+Java后端進(jìn)行調(diào)試時解決跨域問題的方式

    vue+Java后端進(jìn)行調(diào)試時解決跨域問題的方式

    今天在開發(fā)中遇到有點小問題,vue+Java后端進(jìn)行調(diào)試時如何解決跨域問題,下面小編給大家分享解決方法,感興趣的朋友一起看看吧
    2017-10-10
  • element-ui下拉菜單組件Dropdown的示例代碼

    element-ui下拉菜單組件Dropdown的示例代碼

    這篇文章主要介紹了element-ui下拉菜單組件Dropdown,本文詳細(xì)給大家介紹了我遇到的一個最大的坑,通過結(jié)合示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-08-08
  • 詳解Vue中添加過渡效果

    詳解Vue中添加過渡效果

    本篇文章主要介紹了詳解Vue中添加過渡效果 ,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03

最新評論

镇雄县| 巴马| 平昌县| 迭部县| 贵溪市| 大埔区| 治县。| 福海县| 马鞍山市| 黑龙江省| 黑水县| 五寨县| 宝丰县| 南郑县| 岳阳市| 陇川县| 五原县| 遂昌县| 若尔盖县| 昌邑市| 青河县| 和平区| 江都市| 项城市| 沅陵县| 永川市| 施甸县| 雅江县| 贡觉县| 凤庆县| 台江县| 裕民县| 民丰县| 工布江达县| 泸西县| 密云县| 宝山区| 廊坊市| 营口市| 富川| 黔西县|