Reactjs react键索引示例不起作用

Reactjs react键索引示例不起作用,reactjs,npm,hashids,react-key-index,Reactjs,Npm,Hashids,React Key Index,我想使用react键索引扩展来生成唯一的id。 我试图实现他们的示例,但无论我做什么,它仍然会给我带来相同的错误: TypeError:哈希ID不是构造函数 链接: 下面是一个非常简单的例子: App.js: import React from 'react'; import keyIndex from "react-key-index"; import './App.css'; function App() { let arr = ["one", "two", "three"]; a

我想使用react键索引扩展来生成唯一的id。 我试图实现他们的示例,但无论我做什么,它仍然会给我带来相同的错误:

TypeError:哈希ID不是构造函数

链接:

下面是一个非常简单的例子:

App.js:

import React from 'react';
import keyIndex from "react-key-index";
import './App.css';

function App() {
  let arr = ["one", "two", "three"];
  arr = keyIndex(arr, 1);

  const list = arr.map(arr => <li key={arr.id}>{arr.value}</li>);
  return <ul>{list}</ul>;
}

export default App;
从“React”导入React;
从“反应键索引”导入键索引;
导入“/App.css”;
函数App(){
设arr=[“一”、“二”、“三”];
arr=键索引(arr,1);
const list=arr.map(arr=>
  • {arr.value}
  • ); 返回
      {list}
    ; } 导出默认应用程序;
    index.js:

    import React from 'react';
    import ReactDOM from 'react-dom';
    import './index.css';
    import App from './App';
    import * as serviceWorker from './serviceWorker';
    
    ReactDOM.render(<App />, document.getElementById('root'));
    serviceWorker.unregister();
    
    从“React”导入React;
    从“react dom”导入react dom;
    导入“./index.css”;
    从“./App”导入应用程序;
    将*作为serviceWorker从“/serviceWorker”导入;
    ReactDOM.render(

    请问,你知道我在哪里犯了错误吗?我正在尝试在全新的react项目(创建react应用程序)中设置它。从我的角度来看,我已经正确地实现了它(但显然我没有)。 下面是该错误在浏览器中的显示方式:
    您是否运行了
    npm安装
    或者
    npm安装--保存hashid
    hashid
    是该npm包的一个依赖项:


    require('hashid');
    应该加载NPM包(如果您安装了它);如果找不到它,我预计会出现类似这样的错误。

    您似乎正在使用旧版本的

    尝试使用
    V0.1.1
    并检查是否适合您

    我用React
    16.8.6
    试过了,它似乎对我很有效

    这是给你的裁判的一封信


    错误在库文件中,我想不是OP的代码。我没有明确安装HashID,但node_modules文件夹包含它,所以我想这不是问题所在。并且需要('HashID'))也返回它。@RadekAdler在代码中,如果你在那里设置断点,
    HashIds
    实际上是一个构造函数吗?嗨,我已经完全按照你的回答重新安排了我的问题。我已经发布了我的package.json,包括与你的项目相同的版本。它仍然不起作用。我的意见是,这个问题一定是由我自己造成的在index.js中加载app.js(2个文件),但您只使用了一个文件(npmjs中的示例代码也是如此).其他的都是你项目的复写本。但是如果这样的细节造成了这样的麻烦,听起来我疯了。@SiddAjmera codesandbox中的示例不起作用。@Cubancoffee,不确定发生了什么!上次我看到它时它还在起作用。