react ts專案中使用jexcel,單元格合併

2021-10-10 02:46:55 字數 2386 閱讀 8629

裡面使用的時class元件的寫法,現在公司都要求使用hook的寫法,後來我用了ref來後去節點結果還是不行,通過多次實驗發現他要這樣寫

3.在準備使用他的setmerge方法實現單元格合併的時候發現我得到的jexcel物件是空的

我剛開始想的是用乙個普通的變數將他儲存起來

結果不行,後來發現 是由於元件沒有更新在後面取值的時候才拿不到,用setstate就可以了

4.在對**進行更改後,熱更新之後頁面會出現多個**

開啟開發者工具檢視發現,掛載的根節點裡面有兩個相同的

檢視原始碼發現它是使用insertibefore插入

所以我的解決辦法就是在每次元件更新的時候 將jexcedom.innerhtml = 『』,問題解決了

完整**

import react,

from

"react"

;import reactdom from

"react-dom"

;// import "../node_modules/jexcel/dist/jexcel.css";

import

"../../../node_modules/jexcel/dist/jexcel.css"

;// import jexcel from 'jexcel'

const jexcel =

require

("jexcel");

const arr =

["a"

,"b"

,"c"

,"d"

,"e"

,"f"

,"g"

,"h"

,"i"

,"j"

,"k"];

const

firstjexcel=(

)=>

)const

[coll,setcoll]

=usestate(0

)const

[rowl,setrowl]

=usestate(0

)const

[colr,setcolr]

=usestate(0

)const

[rowr,setrowr]

=usestate(0

)const

onselection=(

d: htmlelement,

coll: number,

rowl: number,

colr: number,

rowr: number

)=>

;const

onmoverow=(

)=>

;let option =

;useeffect((

)=>))

});const

returntable=(

)=>

;return

(id=

"jexcel-root"

style=

} ref=

}>

<

/div>

,math.

abs(rowl-rowr)+1

,math.

abs(coll-colr)+1

) console.

log(

'table'

,table)

table&&table.

setmerge(`

$$`,math.

abs(coll-colr)+1

,math.

abs(rowl-rowr)+1

)}}>合併<

/button>

<

/div>);

};export

default firstjexcel;

專案中使用ibatis方法

通過daomanagerbuilder載入dao.xml檔案獲取daomanager物件 dao.xml 配置如下 sql map config 配置如下 匯入database.properties檔案 設定資料庫連線屬性 匯入每乙個資料庫實體檔案 檔案指定實體類和資料表對應關係 account.x...

在專案中使用ExtJS

今天extjs官網發布了extjs最新正式版4.2.1。extjs為開發者在開發富客戶的b s應用中提供豐富的ui元件,具有統一的主題,便於快速開發,提高效率。但顯然它並不適合互聯 的開發。builds 壓縮後的extjs 體積更小,更快 docs 開發文件 examples 官方演示示例 loca...

在專案中使用springmvc

springmvc是spring框架的乙個模組,springmvc和spring無需通過中間整個層進行整合,它是乙個基於mvc的web框架。springmvc是基於方法開發的,struts2是基於類開發的。springmvc將url和controller方法對映,對映成功後springmvc生成乙個...