前言:聚集mui框架遇到的问题,遇到坑就记录更新
1.mui报错:$(…).append is not a function
异常信息:
Uncaught TypeError: $(...).append is not a function
at group_list?accessToken=9446C9DB5DF140E7AC6C013FD804E13E:163
at e.pt.render (laytpl.js:9)
at success (group_list?accessToken=9446C9DB5DF140E7AC6C013FD804E13E:162)
at k (mui.min.js:7)
at XMLHttpRequest.u.onreadystatechange (mui.min.js:7)
报错位置的部分代码
mui.init();
(function($){
//网络请求的伪代码
mui.ajax('[[@{/group_list}]]',{
data: {
accessToken: '[[${accessToken}]]'
},
dataType: 'json',
type: 'GET',
success: function(response){
var listTpl = document.getElementById("template_group_list").innerHTML;
laytpl(listTpl).render(response.data, function(html){
//看这里
$("#chat_group_list").append(html);
});
},
error: function(msg){
}
});
})(mui);
原因:由于MUI框架的定位是“最接近原生体验的移动App的UI框架”, 因此和jQuery有所区别,很少为简化DOM操作而封装API,所以不存在append的dom添加方法
解决:可以使用ajax进行网络请求,jq进行append对dom进行操作。
参考: http://ask.dcloud.net.cn/question/17837
2.为何longtap事件无效?
原因:mui.init()中没有配置longtap事件的开关