@vrx-arco/pro-layout
Version:
<p align="center"> <img src="https://vrx-arco.github.io/arco-design-pro/favicon.svg" width="200" height="250"> </p>
75 lines (74 loc) • 2.3 kB
JavaScript
;
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
const vue = require("vue");
const webVue = require("@arco-design/web-vue");
const vueRouter = require("vue-router");
const IconApps = require("@vrx-arco/icons-vue/IconApps");
const _var = require("../style/var.js");
const PageWrapper = /* @__PURE__ */ vue.defineComponent({
name: "vrx-arco-page-wrapper",
props: {
scrollbar: {
type: Boolean,
default: false
}
},
setup: (props, {
slots
}) => {
const {
bemClass
} = _var.style("page-wrapper");
const route = vueRouter.useRoute();
const router = vueRouter.useRouter();
const handleRoute = (name) => {
router.replace({
name
});
};
const renderContent = () => {
var _a;
if (props.scrollbar) {
return vue.createVNode("main", {
"class": bemClass("__content--scrollbar")
}, [vue.createVNode(webVue.Scrollbar, {
"outerClass": bemClass("__scrollbar--out"),
"class": bemClass("__scrollbar")
}, {
default: () => {
var _a2;
return [(_a2 = slots.default) == null ? void 0 : _a2.call(slots)];
}
})]);
}
return vue.createVNode("main", {
"class": bemClass("__content")
}, [(_a = slots.default) == null ? void 0 : _a.call(slots)]);
};
return () => vue.createVNode("section", {
"class": bemClass()
}, [vue.createVNode("header", {
"class": bemClass("__header")
}, [vue.createVNode(webVue.Breadcrumb, null, {
default: () => [vue.createVNode(webVue.BreadcrumbItem, null, {
default: () => [vue.createVNode(IconApps, {
"class": "arco-icon"
}, null)]
}), route.matched.map((item) => {
var _a;
if (!((_a = item.meta) == null ? void 0 : _a.title)) {
return vue.createVNode(vue.Fragment, null, null);
}
return vue.createVNode(webVue.BreadcrumbItem, vue.mergeProps({
"class": bemClass("__breadcrumb-item"),
"key": item.name
}, {
onClick: () => handleRoute(item.name)
}), {
default: () => [item.meta.title]
});
})]
})]), renderContent()]);
}
});
exports.PageWrapper = PageWrapper;