简体   繁体   English

reactjs 错误 Uncaught ReferenceError: require is not defined

[英]reactjs error Uncaught ReferenceError: require is not defined

I am creating reactJS in .Net Core framework.我正在 .Net Core 框架中创建 reactJS。 I am using ReactJS as CDN in my .net app and My React App is throwing an error: require is not defined.我在我的 .net 应用程序中使用 ReactJS 作为 CDN,我的 React 应用程序抛出错误:require 未定义。 I am attaching my code below:我在下面附上我的代码:

var React = require('react');
var ReactDOM = require('react-dom');
var ReactBsTable = require('react-bootstrap-table');
var BootstrapTable = ReactBsTable.BootstrapTable;
var TableHeaderColumn = ReactBsTable.TableHeaderColumn;

var products = [{
    id: 1,
    name: "Product1",
    price: 120
}, {
    id: 2,
    name: "Product2",
    price: 80
}];

ReactDOM.render(
    <BootstrapTable data={products} version='4'>
        <TableHeaderColumn isKey dataField='id'>Product ID</TableHeaderColumn>
        <TableHeaderColumn dataField='name'>Product Name</TableHeaderColumn>
        <TableHeaderColumn dataField='price'>Product Price</TableHeaderColumn>
    </BootstrapTable>, document.getElementById('content')
);

在此处输入图片说明

Try using ES6 import instead of require尝试使用 ES6 import而不是require

ie., try即,尝试

import React from 'react';
import ReactDOM from 'react-dom';
import ReactBsTable from 'react-bootstrap-table';

Because require is not inbuilt react api.因为require不是内置的 react api。 You need to install extra library for using require in react.您需要安装额外的库以在反应中使用require CommonJs provides api for module loader like require CommonJs 为像require这样的模块加载器提供了 api

Please try this,请试试这个,

Main html file where you are using cdn add this.在您使用 cdn 的主 html 文件中添加此内容。

<script src="https://unpkg.com/react@16/umd/react.development.js" crossorigin></script>
<script src="https://unpkg.com/react-dom@16/umd/react-dom.development.js" crossorigin></script>
<script src="https://unpkg.com/babel-standalone@6/babel.min.js"></script>
<script type="text/babel"></script>

<!-- Load our React component. -->
<script src="new_component.js"></script>

<!-- ... existing HTML ... -->

<div id="new_component_container"></div>

<!-- ... existing HTML ... -->

In the component file do this,在组件文件中执行此操作,

import ReactBsTable from  'react-bootstrap-table';
var BootstrapTable = ReactBsTable.BootstrapTable;
var TableHeaderColumn = ReactBsTable.TableHeaderColumn;

var products = [{
    id: 1,
    name: "Product1",
    price: 120
}, {
    id: 2,
    name: "Product2",
    price: 80
}];

const domContainer = document.querySelector('#new_component_container');
ReactDOM.render(
  <BootstrapTable data={products} version='4'>
    <TableHeaderColumn isKey dataField='id'>Product ID</TableHeaderColumn>
    <TableHeaderColumn dataField='name'>Product Name</TableHeaderColumn>
    <TableHeaderColumn dataField='price'>Product Price</TableHeaderColumn>
  </BootstrapTable>, 
domContainer);

For react bootstrap table also , use import only if you are installing the library.对于 react bootstrap table,只有在安装库时才使用import Again if you are using cdn for that too then import won't work.同样,如果您也为此使用 cdn,则import将不起作用。

For more info related to react cdn please view this.有关 react cdn 的更多信息,请查看这里。

https://reactjs.org/docs/add-react-to-a-website.html https://reactjs.org/docs/add-react-to-a-website.html

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM