問題
原因
有些時候,你的有些表單元素可能是動態插入的。這時 form 模塊 的自動化渲染是會對其失效的。雖然我們沒有雙向綁定機制(因爲我們叫經典模塊化框架,偷笑.gif) 但沒有關係,你只需要執行 form.render(type, filter); 方法即可。
解決
updated:function(){
layui.use(['form'], function(){
form.render();
})
}
updated: function () {
layui.form.render('select', 'industryCenter');
},
頁面 select的上層div添加 lay-filter="industryCenter",這樣才能被render指定刷新
<div class="layui-form-item">
<label class="layui-form-label">行業中心:</label>
<div class="layui-input-inline" lay-filter="industryCenter">
<select id="industryCenter" name="industryCenter">
<option v-for="industry in industryList" v-bind:value="industry.id" :title="industry.id">{{industry.name}}</option>
</select>
</div>
</div>
缺少layui.use(['form'], function(){}) 擴住,在第一次的時候會報下面的錯誤。
所以還是要用下面的方式
updated:function() {
// 在vue更新數據後,layui
layui.use(['form'], function(){
form.render('select','industryCenter');
})
},
參考 https://blog.csdn.net/qq_26814945/article/details/82019346