Vue 學習筆記 04——TabPanel

1.渲染函數  Render

render: function (createElement,context) {
	    return createElement('span', '替代的文字內容');
}

render函數提供兩個參數:

a)createElement 函數:具體參數見官網文檔

      https://cn.vuejs.org/v2/guide/render-function.html#%E8%99%9A%E6%8B%9F-DOM

b)context 參數,官網解釋如下:

      

     context 意爲上下文,在表格中,獲取的內容則是每一行的數據

      

 

c)使用案例:

     案例1:代表 已完成代表 未完成,類別顯示應爲“已完成 ” 或 “未完成 ”,後臺返回的是1或 2,此時需要對列的數據顯示進行判斷,可以使用 render 函數

var columns1=[
  ...
  {
		title:'表頭標題',
		key:'bt',
		render: function (createElement,context) {
			if(context.row.bt=='' || context.row.bt==null){
				return createElement('span', ''); //判斷表格內容爲空情況
			}else{
				return createElement('span', context.row.bt=='1' ? '第一種情況': '第二種情況');  //不爲空情況的顯示文字
			}

		},
		width:100

	},
    ...
]

     案例2:表格中的數據有html標籤,需要對數據格式進行轉換,需要用到createElement 函數 參數中的DOM屬性

     

var columns1=[
  ...
  {
		title:'表頭標題',
		key:'bt',
		render: function (createElement,context) {
				return createElement('span', { domProps:{innerHTML:context.row.bt}} );  //對帶有html標籤的文字轉換
		

		},
		width:100

	},
    ...
]

2.Tab選項卡的使用

需要注意幾點:

a)@on-click 事件是在 Tabs 標籤上的,並且默認返回的爲name值,可以通過綁定name值來確定切換到哪個選項卡

b)另一種用法:例如每個選項卡下的內容對應的都是 table ,則可以把 table 單獨拿出來,共用一個 table,通過 tab 的 name值來判斷 table 裏的數據顯示

<Tabs  @on-click="changeTab($event)">
	        <Tab-Pane label="已選"></Tab-Pane>
	        <Tab-Pane v-for="item in tablist" :key="item.id" :label="item.xkfsmc" :name="item.xkfsdm">
	        </Tab-Pane>
	    </Tabs>

3.數值比較

a)文本框獲取的爲字符型,想要對輸入的數值做比較,需要在判斷時用  Number(val) 來轉換成數值型

if(Number(val.jfs) ==0 || Number(val.jfs) < 0){
	self.$Message.error('請填寫正確的積分');
	return ;
}

b)對填入的數值,需要判斷幾種情況:

      1)不爲空;

      2)爲0 或 小於 0 ;

      3)大於限定的值;

if(val.jfs =='' || val.jfs == null ){
	self.$Message.error('請填寫積分');
	return ;
}
else if(Number(val.jfs) ==0 || Number(val.jfs) < 0){
	self.$Message.error('請填寫正確的積分');
	return ;
}
else if(Number(val.jfs) > Number(self.xkgzszOne.jfxs)){
	self.$Message.error('超出可選積分');
	return ;
}

 4.    時間比較

通過時間比較,來判斷當前功能按鈕是否可用

 a)通過  new Date() 獲取當前時間轉換成標準時間,然後使用  getTime() 來把時間轉換成數值,方便比較

var curTime = (new Date()).getTime();
var timeS= (new Date(startTime)).getTime();
var timeE= (new Date(endTime)).getTime();

console.log(new Date());  // Wed Mar 18 2020 22:31:17 GMT+0800 (中國標準時間)
console.log(curTime);     // 1584541877493

b)對於表格內的按鈕,可以使用三目運算符來判斷是否禁用    

<i-button @click="cz(handle.row)" :disabled="new Date().getTime() > new Date(handle.row.ktxkkssj).getTime() && new Date().getTime() < new Date(handle.row.ktxkjssj).getTime() ? false : true ">禁用</i-button>

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章