摸索這個(gè)模板引擎碰到的問題,分享一下
創(chuàng)新互聯(lián)建站擁有網(wǎng)站維護(hù)技術(shù)和項(xiàng)目管理團(tuán)隊(duì),建立的售前、實(shí)施和售后服務(wù)體系,為客戶提供定制化的網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)站維護(hù)、遂寧服務(wù)器托管解決方案。為客戶網(wǎng)站安全和日常運(yùn)維提供整體管家式外包優(yōu)質(zhì)服務(wù)。我們的網(wǎng)站維護(hù)服務(wù)覆蓋集團(tuán)企業(yè)、上市公司、外企網(wǎng)站、成都商城網(wǎng)站開發(fā)、政府網(wǎng)站等各類型客戶群體,為全球上1000家企業(yè)提供全方位網(wǎng)站維護(hù)、服務(wù)器維護(hù)解決方案。
本人在實(shí)現(xiàn)使用laytpl實(shí)現(xiàn)動(dòng)態(tài)渲染菜單,來減少靜態(tài)代碼時(shí)候碰到了,元素是成功渲染出來,但是折疊動(dòng)畫效果和點(diǎn)擊事件都失效了,然后仔細(xì)看了一下官方文檔
官方文檔原話:跟表單元素一樣,很多時(shí)候你的頁(yè)面元素可能是動(dòng)態(tài)生成的,這時(shí)element的相關(guān)功能將不會(huì)對(duì)其有效,你必須手工執(zhí)行 element.init(type, filter)方法即可。注意:2.1.6 開始,可以用 element.render(type, filter);
意思是我們動(dòng)態(tài)渲染頁(yè)面的時(shí)候,渲染完后一定要執(zhí)行element.init()進(jìn)行重新渲染,這樣動(dòng)畫效果和事件才能正常運(yùn)行
以下是我實(shí)現(xiàn)layui模板引擎實(shí)現(xiàn)動(dòng)態(tài)菜單源碼
var data = { menu: [{ parentTitle: '權(quán)限列表', icon: 'layui-icon-auz', expand: 'layui-nav-itemed', //是否默認(rèn)展開 child: [{ title: '管理員列表', href: "{{route('admin.list')}}" }, { title: '角色列表', href: "{{route('role.index')}}" }, { title: '權(quán)限列表', href: "" }] }] }; var getTpl = menuTpl.innerHTML, view = document.getElementById('menu'); laytpl(getTpl).render(data, function(html) { view.innerHTML = html; }); //初始化動(dòng)態(tài)元素,一些動(dòng)態(tài)生成的元素如果不設(shè)置初始化,將不會(huì)有默認(rèn)的動(dòng)態(tài)效果 element.render();
這篇淺談layui使用模板引擎動(dòng)態(tài)渲染元素要注意的問題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持創(chuàng)新互聯(lián)。