浏览代码

router: 从URL到props,并进行类型转换的工具

Michael Wang 6 年之前
父节点
当前提交
347d1e7ec1
共有 1 个文件被更改,包括 18 次插入0 次删除
  1. 18 0
      src/router.js

+ 18 - 0
src/router.js

@@ -4,6 +4,17 @@ import Home from "./views/Home.vue";
 
 Vue.use(Router);
 
+// function propsValidator(route, component) {
+//   const props = { ...route.params };
+//   Object.entries(props).map(([key, prop]) => {
+//     console.log(prop, key);
+//     if (!(prop instanceof component.props[key].type)) {
+//       props[key] = component.props[key].type(prop);
+//     }
+//   });
+//   return props;
+// }
+
 let router = new Router({
   mode: "history",
   routes: [
@@ -21,6 +32,13 @@ let router = new Router({
       component: () =>
         import(/* webpackChunkName: "about" */ "./views/About.vue")
     }
+    // {
+    //   path: "/xxx/:id",
+    //   component: XXX,
+    //   props(route) {
+    //     return propsValidator(route, XXX);
+    //   }
+    // }
   ]
 });