在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/網絡安全  HTML/ iview 中tree組件使用render自定義內容樹顯示問題

iview 中tree組件使用render自定義內容樹顯示問題

iview 中tree組件使用render自定義內容后,點擊樹節(jié)點不再顯示背景。如何在render渲染中加入當前選中節(jié)點有背景色?
1,默認tree組件,單擊有背景
圖片描述

2,使用render后選中的節(jié)點不再有背景
圖片描述

回答
編輯回答
厭遇

iview的作者在github上面有回答了類似的問題,tree組件使用了render函數(shù)之后,以為著所有的邏輯及效果都需要自己手動寫,tree組件僅僅提供最簡單的數(shù)據(jù)展示效果,你要點擊有背景的話可以在render函數(shù)里面注冊一個click事件實現(xiàn)即可

2017年5月25日 19:46
編輯回答
莫小染

同求解決方案~

2017年3月25日 05:03
編輯回答
礙你眼

我這個方法應該比較靠譜吧。
html設置ref="tree"

<Tree :data="treeData" ref="tree" :render="renderContent"></Tree>

js方法

renderContent(h, { root, node, data }){
    return h('span',{
        style:{
            color:'#666',
            cursor:'pointer'
        },
        domProps:{
            className:'btn'
        },
        on:{
            click:(e)=>{
                let btns=this.$refs.tree.$el.querySelectorAll('.btn')
                for(let i=0;i<btns.length;i++){
                    btns[i].style.backgroundColor='#fff'
                }
                e.path[0].style.backgroundColor="#2d8cf0";//當前點擊的元素
            }
        }
    },data.title)
}
2017年9月14日 12:14
編輯回答
呆萌傻

求樓主分享最后解決方案...

2018年1月20日 21:18
編輯回答
陌璃

用了render這個方法selected屬性因為權重問題不起作用,我把節(jié)點變成一個button可以點擊,改一下button的樣式,問題就解決了,滿意的話贊賞下唄,不懂的話,私聊

2017年3月1日 06:26
編輯回答
黑與白

簡單。把節(jié)點title放在button顯示

h('span', data.title)

改成

            h('Button', {
              props: Object.assign({}, this.buttonProps, {
                type: 'text'
              }),
              on: {
                click: () => { console.log('點擊按鍵') }
              }
            },
            data.title)
          ]),
2017年12月25日 03:02