计算机网络
-
HTTP 缓存
-
你知道 302 状态码是什么嘛?你平时浏览网页的过程中遇到过哪些 302 的场景?
-
HTTP 常用的请求方式,区别和用途?
-
HTTPS 是什么?具体流程
-
三次握手和四次挥手
-
你对 TCP 滑动窗口有了解嘛?
-
WebSocket与Ajax的区别
-
了解 WebSocket 嘛?
-
HTTP 如何实现长连接?在什么时候会超时?
-
TCP 如何保证有效传输及拥塞控制原理。
-
TCP 协议怎么保证可靠的,UDP 为什么不可靠?
开源分享:【大厂前端面试题解析+核心总结学习笔记+真实项目实战+最新讲解视频】
算法
-
链表
-
字符串
-
数组问题
-
二叉树
-
排序算法
-
二分查找
-
动态规划
-
BFS
-
栈
-
DFS
-
回溯算法
expand: true, permissions: [ { value: "p1_1_1_view", text: "浏览", disabled: true}, { value: "p1_1_1_create", text: "创建", disabled: true }, { value: "p1_1_1_update", text: "更新", disabled: true }, { value: "p1_1_1_remove", text: "删除", disabled: true }, { value: "p1_1__export", text: "导出", disabled: true } ], }, { title: "角色列表", expand: true, permissions: [ { value: "p1_1_2_view", text: "浏览", disabled: true} ], } ] }, { title: "操作员", expand: true, permissions: [ { value: "p1_2_view", text: "浏览", disabled: true} ], children: [ { title: "操作员一", expand: true, permissions: [ { value: "p1_2_1_view", text: "浏览", disabled: true} ], }, { title: "操作员二", expand: true, permissions: [ { value: "p1_2_2_view", text: "浏览", disabled: true} ], } ] } ] } ], buttonProps: { type: "default", size: "small" }
};
},
methods: {
renderContent(h, { root, node, data }) {
return h(
“span”,
{
style: {
display: “inline-block”,
width: “100%”
},
class: “permission-tree-node”
},
[
h(“span”, [
h(“Icon”, {
props: {
type: “ios-paper-outline”
},
style: {
marginRight: “8px”
}
}),
h(“span”, data.title)
]),
h(
“span”,
{
style: {
display: “inline-block”,
float: “right”,
marginRight: “32px”
}
},
[
h(
“CheckboxGroup”,
{
props: {
value: this.selectedPermissions
},
on: {
“on-change”: event => {
this.selectedPermissions = event;
}
}
},
(data.permissions || []).map(obj => {
return h(
“Checkbox”,
{
props: {
label: obj.value,
disabled: obj.disabled
}
},
obj.text
);
})
)
]
)
]
);
},
append(data) {
const children = data.children || [];
children.push({
title: “appended node”,
expand: true
});
this.$set(data, “children”, children);
},
remove(root, node, data) {
const parentKey = root.find(el => el === node).parent;
const parent = root.find(el => el.nodeKey === parentKey).node;
const index = parent.children.indexOf(data);
parent.children.splice(index, 1);
}
},
mounted() {}
};