#1 报错
plat_users.html:385 Uncaught TypeError: Cannot read property 'validate' of undefined
at VueComponent.submitForm (plat_users.html:385)
at Proxy.boundFn (vue.js:130)
at click (eval at makeFunction (vue.js:8480), <anonymous>:2:5611)
at VueComponent.invoker (vue.js:1948)
at VueComponent.Vue.$emit (vue.js:2549)
at VueComponent.handleClick (element-ui.js:3)
at boundFn (vue.js:130)
at HTMLButtonElement.invoker (vue.js:1948
原因是 @click="submitForm(reviseForm)" 中的 reviseForm 没有使用引号。
正确代码,如下:
<el-button type="primary" @click="submitForm('reviseForm')">确 定</el-button>
# 闭包中 return,并无法中断外面的代码执行。
Vue js:
this.$refs[formName].validate(function (valid) {
if (!valid) {
return ; // 此处的 return 无法中断下面发起的 http post 请求。
}
});
// 上面闭包代码中的 return 并无法中断下面的请求
this.$http.post('url', {username: 'james', 'pwd': 'james'}).then(function(res) {
})
# issue -4: vue-element-ui 中的 pagination,选中的展示条数,无法获取到选中状态。
-- View --
<el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange"
:current-page="currentPage" :page-sizes="[10, 20, 30, 40]"
:page-size="pageSize" layout="total, sizes, prev, pager, next, jumper"
:total="total" class="pagination"></el-pagination>
-- Vue js --
handleSizeChange: function (val) {
var _this = this;
this.$http.post('/user/index', {current: this.currentPage, size: val}).then(
function (response) {
_this.paginate_res = response.body;
_this.tableData3 = response.body.data.users;
_this.total = response.body.data.total;
_this.pageSize = parseInt(response.body.data.size);
}, function (response) {
this.$notify({
title: '网络响应缓慢',
message: '网络暂无响应,请稍后再试。=.=',
type: 'info'
});
});
}