Reactjs:ReferenceError:未定义kendo

时间:2018-04-27 07:45:05

标签: reactjs kendo-ui

我在我的反应项目中使用了kendo-ui。导入和使用Menu组件的代码如下:

import React from 'react';
import { Menu, MenuItem } from '@progress/kendo-layout-react-wrapper';

const AppHeader = () => {
    return (
        <Menu>
            <MenuItem>
                Test Item
            </MenuItem>
        </Menu>
    )
}

export default AppHeader; 

它编译得很好,但在渲染时会抛出以下错误:

ReferenceError: kendo is not defined
Menu../node_modules/@progress/kendo-layout-react-wrapper/dist/es/menu/menu.js.Menu.componentDidMount
E:/projects/eucerin/node_modules/@progress/kendo-layout-react-wrapper/dist/es/menu/menu.js:31
  28 | Menu.prototype.componentDidMount = function () {
  29 |     var domNode = ReactDOM.findDOMNode(this);
  30 |     var _a = this.props, children = _a.children, widgetRef = _a.widgetRef, props = __rest(_a, ["children", "widgetRef"]);
> 31 |     this.widgetInstance = new kendo.ui.Menu(domNode, props);
  32 |     _super.prototype.componentDidMount.call(this);
  33 | };
  34 | Menu.prototype.componentWillReceiveProps = function (nextProps) {

我想我在这里错过了依赖。有人可以让我知道吗?

由于

4 个答案:

答案 0 :(得分:2)

我有同样的问题。 由于某种原因,我不得不以这种方式导入剑道:

import from '@progress/kendo-ui';

希望有帮助。

答案 1 :(得分:1)

我遇到了类似的问题并提出了问题React Kendo UI TreeView throws 'kendo is not defined'

我找到了来自KendoUI plunker示例TreeView Example

的解决方案

Kendo UI指令是:

Dependencies
The TreeView package requires you to install the following peer dependencies in your application:
  • @进展/剑术-UI

我们必须安装它,但这还不够。 KendoUI团队所做的是明确地在代码中导入@progress/kendo-ui

import kendo from '@progress/kendo-ui';

希望它有所帮助。

答案 2 :(得分:0)

source开始,您还需要1个基本依赖关系才能使用kendo-layout-react-wrapper

@progress/kendo-base-component-react-wrapper

要安装并另存为依赖项,请使用:

npm install --save @progress/kendo-base-component-react-wrapper

答案 3 :(得分:0)

我认为你错过了peer dependency (@progress/kendo-ui)

在项目文件夹中键入npm install --save @progress/kendo-ui并再次编译您的前端以查看它是否修复了错误。

Documentation Source