使用 react-router-sitemap 时,站点地图不是构造函数

ano*_*432 5 sitemap node.js reactjs react-router

我正在尝试为我的 React 网站创建站点地图,并且我正在使用react-router-sitemap它。这是我的sitemap-builder.js

require('babel-register');

//import React from 'react';
// import { render } from 'react-dom';
//import Sitemap from 'react-router-sitemap';

const router = require('./root.js').default;  
const Sitemap = require('./').default;

const filterConfig = {
  isValid: false,
  rules: [
    /\/admin/
  ],
};

( 
new Sitemap(router)
    .filterPaths(filterConfig)
    .build('https://www.ace-up.com')
    .save('./sitemap.xml')
);
Run Code Online (Sandbox Code Playgroud)

我的package.json有以下几点:

"scripts": {
  "build:sitemap": "node ./js/sitemap-builder.js"
},
Run Code Online (Sandbox Code Playgroud)

所以我只是使用命令通过我的终端运行它:npm run build:sitemap但它给了我以下错误:

new Sitemap(router)
^

TypeError: Sitemap is not a constructor
Run Code Online (Sandbox Code Playgroud)

而且我也安装了该模块;我可以在我的package.json. 为什么会出现错误以及如何纠正它?

Jat*_*pta 3

您导入的 Sitemap 构造函数是错误的。

更改这一行:

const Sitemap = require('./').default;
Run Code Online (Sandbox Code Playgroud)

对此:

const Sitemap = require('react-router-sitemap').default;
Run Code Online (Sandbox Code Playgroud)

现在应该可以工作了。