0、提问
1. res && this.drawerClose('MENU') 这里的&&如何理解?
2. MODEL.menus().then((res) => {
const data = res.data.data //为什么是2个data
3. modalConfirm(
{
content: `确认删除菜单“${menu.name}”?`,
},
() => {
messageCommon({
content: '删除成功',
})
},
() => {
messageCommon({
type: 'error',
content: '取消删除',
})
}
)
4.store里的commit是什么含义?
5.公共字典某行点明细按钮的代码含义?
this.$router.push({
name: "dict-data-pubcode-detail",
query: {
code_class: e.code_class,
},
});
一、data
data() {
this.fetchUser = this._.debounce(this.fetchUser, 500)
//return 是否返回页面上需要调用的数据?以下返回结果变量是否可以随意添加?
return {
isPending: true,
addOrEdit: '', // ADD 还是 EDIT
tableData: [],
tableColumns,
fetching: false,
fetchUsers: [],
selectedUsers: [],
requestUsers: [],
requestUsersKeys: [],
treeData: [],
selectedMenuKeys: [],
info: {
halfCheckedKeys: [],
},
role: {},
}
},
二、watch
watch: { //watch 什么意思,用在什么场景?
selectedUsers(val) {
this.selectedUsers = val
},
requestUsersKeys(val) {
this.requestUsersKeys = val
},
},
三、components
将需要的依赖页面注册到本页面中,我看menu案例里面没有是否现在自动注册,可以不用?
components: {
'v-child': child
},
四、methods
//此处res是指入参吗,是哪个传过来的?
MODEL.menus().then((res) => {
const data = res.data.data //为什么是2个data
data.map((item) => {
item.level = '二'
item.children != null &&
item.children.map((itm) => {
itm.level = '三'
})
})
this.tableData = data
this.isPending = false
})
// 判断输入内容是否为手机号码的校验 与页面@blur="validatePhoneBlur"配合起来使用
validatePhoneBlur(e) {
const validatePhoneReg = /^1\d{10}$/
if (e.target.value && !validatePhoneReg.test(e.target.value)) {
const arr = [{
message: '您输入的手机格式不正确!',
field: 'phone',
}]
this.form.setFields({ phone: { value: e.target.value, errors: arr } })
}
},
五、RegExp正值表达式
第一个:整数数字
new RegExp('^[0-9]*$', 'gim')
第二个:手机号码
new RegExp('^[1]+[3,5]+\d{9}', 'gim')
第三个:身份证号码
new RegExp('(^\d{17}(?:\d|x|X)$)|(^\d{15}$)', 'gim')
第四个:邮政编码
new RegExp('^\d{6}$', 'gim')
六、js语法
1.数组的访问,用[],下标从0开始:
cityData[provinceData[0]][0]
2.switch
switch (type) {
case 'MENU':
...
break
case 'SUBMENU':
...
break
}
3. == != && || !
等于,不等于,并且,或者,not
4.if else
if (this.addOrEdit == 'ADD') {
...
} else {
...
}
5.RegExp对象
new RegExp(pattern, attributes);
pattern----->字符串 正则表达式的模式
----->[A-Z]-大写字母 [^A-Z]-大写字母除外
attributes-->修饰符 g-全局匹配 i-区分大小写的匹配 m-多行匹配