使用layui来写前端一般效果功能让工作减轻了不少,但是在实际的开发中还是遇到了一些个问题,今天就遇到一个问题,本博客文只是用来记录和简单分析下这个问题
我在同时使用模板引擎和其他模块遇到了其他模块失效的问题
因为使用模板引擎以后如果将绑定元素的ID放在模板引擎中进行绑定会出现绑定不上的情况,所以我们在需要操作的dom上绑定的ID,这个dom最好写在html中而不是模板引擎中,例如我的代码
<div class="layui-warp">
<div class="layui-form">
<div class="layui-inline" style="width: 300px;">
<input type="text" class="layui-input" name="time_period" id="time_period" autocomplete="off" placeholder="选择要查询的时间范围">
</div>
<button class="layui-btn" lay-submit lay-filter="retrive_btn">检索</button>
</div>
<div class="layui-alert-box" style="margin-top:10px;">
<div class="layui-row layui-col-space1">
<div id="view" style="background: #FFF;padding: 0 5px;"></div>
</div>
</div>
</div>
<script id="show" type="text/html">
<div class="layui-col-md3" id="layui-slidebar">
<%# layui.each(d.data, function(index, item){ %>
<div class="layui-row <%# if(index==0){ %> layui-checked<%# } %>" data-index="<% index %>" data-track=<% JSON.stringify(item) %>>
<div class="layui-col-md4"></div>
<div class="layui-col-md8">
<p class="layui-text" style="font-size: 12px;"><% item[0].name %></p>
<p class="layui-text" style="font-size: 12px;"><% getTimeStr(item[0].timestamp) %></p>
</div>
</div>
<%# }); %>
</div>
<div class="layui-col-md9">
<div class="layui-row"></div>
</div>
</script>此时使用绑定的id是layui-slidebar流加载无效,通过改造以后就可以使用流加载
{% include 'public/header.html' %}
<div class="layui-warp">
<div class="layui-form">
<div class="layui-inline" style="width: 300px;">
<input type="text" class="layui-input" name="time_period" id="time_period" autocomplete="off" placeholder="选择要查询的时间范围">
</div>
<button class="layui-btn" lay-submit lay-filter="retrive_btn">检索</button>
</div>
<div class="layui-alert-box" style="margin-top:10px;">
<div class="layui-row layui-col-space1" style="background: #FFF;padding-bottom:10px;">
<div class="layui-col-md3" id="layui-slidebar"></div>
<div class="layui-col-md9" style="padding: 0 5px;">
<div class="layui-row">
<div class="layui-track-scene"></div>
</div>
</div>
</div>
</div>
</div>
<script id="show" type="text/html">
<%# layui.each(d.data, function(index, item){ %>
<div class="layui-row <%# if(index==0){ %> layui-checked<%# } %> layui-track-list" data-index="<% index %>" style="margin-top:5px;">
<div class="layui-col-md3"><img class="layui-track-image" <%# if(index<8) { %>src<%# }else{ %>lay-src<%# } %>="<% d.records[item[0].record_id][0] %>" data-scene="<% d.records[item[0].record_id][1] %>" /></div>
<div class="layui-col-md9">
<p class="layui-text" style="font-size: 10px;line-height:18px;"><% item[0].name %></p>
<p class="layui-text" style="font-size: 10px;line-height:18px;"><% getTimeStr(item[0].timestamp) %></p>
</div>
</div>
<%# }); %>
</script>同时流加载和一些其他的模块没有重新渲染和重新绑定的一些方法,所以我们目前只有通过修改前端代码的写法来临时处理这种问题
内容版权声明:除非注明,否则皆为本站原创文章。
转载注明出处:https://sulao.cn/post/697
相关阅读
- tensorflow模型占用大量GPU显存的处理方法
- tensorflow运行报错'Could not load dynamic library libcudnn.so.8'
- 安装tensorflow报错Cannot uninstall 'warpt'的解决办法
- tensorflow运行报错illegal instruction (core dumped)
- tensorflow保存和加载PB模型文件
- 常用AI框架GPU测试方法
- horovod命令参数解析
- layui使用第三方扩展插件的方法,附含下拉复选框插件
- flask接收layui复选框提交数据的几种方法
- layui模板引擎laytpl模块的用法
评论列表