vue + typescript 中报如下警告提示该怎么解决

发布于 2022-09-12 22:22:04 字数 936 浏览 26 评论 0

如下图所示,typescript + vue 项目中 vue-router 文件中报如图所示警告
image.png
错误信息:

类型“{ mode: string; base: any; routes: any[]; }”的参数不能赋给类型“RouterOptions”的参数。
  属性“mode”的类型不兼容。
    不能将类型“string”分配给类型“"history" | "hash" | "abstract" | undefined”。ts(2345)

router-config.ts

const pageMap = {};

const requireComponent = require.context('@/views', false, /.vue$/);
requireComponent.keys().forEach((filename) => {
  const component = requireComponent(filename).default;
  const { name } = component;
  pageMap[name] = {
    name,
    path: `/${name}`,
    component,
  };
});

const routes = Object.keys(pageMap).map((name) => pageMap[name]);

export default {
  mode: 'history',
  base: process.env.BASE_URL,
  routes: [
    {
      path: '/',
      redirect: 'homePage',
    },
    ...routes,
  ],
};

感觉是上方mode,base类型的问题,这里应该如何修复呢

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

岁月流歌 2022-09-19 22:22:04
// router-config.ts 文件导出的那里改一下,加个类型断言
// RouterOptions 的声明记得自己 import 一下

const routerConfig: RouterOptions = {
  mode: 'history',
  base: process.env.BASE_URL,
  routes: [
    {
      path: '/',
      redirect: 'homePage',
    },
    ...routes,
  ],
};
export default routerConfig;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文