找不到模块“反应”

2024-03-16

我正在尝试将 React 集成到现有的网页中。目前,我无法加载我的 React 应用程序。我的 React 应用程序有两个文件。这时,他们的样子是这样的:

myApp.js

import React from 'react';
import ReactDOM from 'react-dom';

import MyComponent from './components/myComponent';

ReactDOM.render(<MyComponent />, document.getElementById('root'));

myComponent.js

import React from 'react';
import ReactDOM from 'react-dom';

class MyComponent extends React.Component {
  render() {
    console.log('here');
    return (
      <div>
        <h2>Hello (from React)</h2>
        <br />          
      </div>
    );
  }
}

export default MyComponent;

正如你所看到的,我使用的是 ES6。我决定在这个项目上使用ES6。因此,我在 Gulp 文件中使用 Babel 来捆绑我的 React 应用程序。我使用 Gulp 而不是 Webpack,因为我的网站已经在使用 Gulp。不过,我的 package.json 文件中的相关详细信息如下所示:

包.json

...
"devDependencies": {
  "babel-preset-es2015": "^6.14.0",
  "babel-preset-react": "^6.11.1",
  "babelify": "^7.3.0",
  "browserify": "^13.1.0",
  "gulp": "^3.9.1",
  "gulp-babel": "^6.1.2",
  "gulp-clean-css": "^2.0.11",
  "gulp-uglify": "^1.5.4",
  "vinyl-source-stream": "^1.1.0"
}

然后,我使用以下任务捆绑我的 React 应用程序:

gulpfile.js

gulp.task('buildApp', function() {
    return browserify({ entries: ['./app/myApp.js', './app/components/myComponent.js'] })
        .transform("babelify", {presets: ['es2015', 'react']})
        .bundle()
        .pipe(source('bundle.js'))
        .pipe(gulp.dest('./app'))        
    ;
});

运行上述任务时,会生成bundle.js 文件。它看起来像这样:

(function e(t,n,r){function s(o,u){if(!n[o]){if(!t[o]){var a=typeof require=="function"&&require;if(!u&&a)return a(o,!0);if(i)return i(o,!0);var f=new Error("Cannot find module '"+o+"'");throw f.code="MODULE_NOT_FOUND",f}var l=n[o]={exports:{}};t[o][0].call(l.exports,function(e){var n=t[o][1][e];return s(n?n:e)},l,l.exports,e,t,n,r)}return n[o].exports}var i=typeof require=="function"&&require;for(var o=0;o<r.length;o++)s(r[o]);return s})({1:[function(require,module,exports){
'use strict';

var _react = require('react');

var _react2 = _interopRequireDefault(_react);

var _reactDom = require('react-dom');

var _reactDom2 = _interopRequireDefault(_reactDom);

var _myComponent = require('./components/myComponent');

var _myComponent2 = _interopRequireDefault(_myComponent);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

_reactDom2.default.render(_react2.default.createElement(NyComponent, null), document.getElementById('root'));

},{"./components/myComponent":2,"react":"react","react-dom":"react-dom"}],2:[function(require,module,exports){
'use strict';

Object.defineProperty(exports, "__esModule", {
  value: true
});

var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();

var _react = require('react');

var _react2 = _interopRequireDefault(_react);

var _reactDom = require('react-dom');

var _reactDom2 = _interopRequireDefault(_reactDom);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }

function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }

function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }

var MyComponent = function (_React$Component) {
  _inherits(MyComponent, _React$Component);

  function MyComponent() {
    _classCallCheck(this, MyComponent);

    return _possibleConstructorReturn(this, (MyComponent.__proto__ || Object.getPrototypeOf(MyComponent)).apply(this, arguments));
  }

  _createClass(MyComponent, [{
    key: 'render',
    value: function render() {
      console.log('here');
      return _react2.default.createElement(
        'div',
        null,
        _react2.default.createElement(
          'h2',
          null,
          'Hello (from React)'
        ),
        _react2.default.createElement('br', null)
      );
    }
  }]);

  return MyComponent;
}(_react2.default.Component);

exports.default = MyComponent;

},{"react":"react","react-dom":"react-dom"}]},{},[1]);

然后,在我尝试加载此应用程序的网页中,我有以下内容:

...
<div id="root"></div>

<script type="text/javascript" src="https://unpkg.com/[email protected] /cdn-cgi/l/email-protection/dist/react.js"></script>
<script type="text/javascript" src="https://unpkg.com/[email protected] /cdn-cgi/l/email-protection/dist/react-dom.js"></script>
<script type="text/javascript" src="/app/bundle.js"></script>
...

当我尝试在浏览器中加载它时,我的 React 应用程序不会加载。我可以在控制台窗口中看到以下错误消息:

Uncaught Error: Cannot find module 'react'

我不明白为什么反应没有被加载。


您计划在打字稿中使用反应。尝试这个

npm install --save react react-dom @types/react @types/react-dom
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

找不到模块“反应” 的相关文章

随机推荐

  • 如何在本机反应中使 ScrollView 水平

    我正在使用 ScrollView 滚动列表 我怎样才能使它水平它看起来垂直 我也尝试用不同的视图进行总结 但它不起作用 for eg
  • 在 java 9 中处理 PrintGCApplicationStoppedTime 标志

    我的应用程序正在使用 gc 标志 PrintGCApplicationStoppedTime 但是当我使用 Java 9 运行它时 它失败并出现以下错误 Unrecognized VM option PrintGCApplicationSt
  • Apache Xalan 的替代 XSLT 处理器

    我目前在 Java 应用程序中使用 Apache Xalan XSLT 处理器 但我想使用一些支持使用扩展函数的替代解决方案 Xalan 似乎已经过时并且有问题 我知道 Saxonixa Saxon 但它是闭源的 有没有一些开源且运行良好的
  • IBM WebSphere 8 与 Axis2 Web 服务发生内存泄漏

    将应用程序从 v6 迁移到 WebSphere v8 并开始出现内存泄漏 主要嫌疑人是 org apache axis2 看起来每次应用程序调用 Web 服务时 WAS8 都会创建一个名为 ServiceClient 的对象 并将其存储在名
  • 通知中的待定意图不起作用

    下面是我应该打开的代码块NotificationActivity当点击通知时 但它不起作用 private void setNotification String notificationMessage Uri alarmSound get
  • angular2 等待 if 条件下的 observable 完成

    我已经实现了这样的 if 语句 if this service check return true else 这个 if 条件等待后端的响应 但在 observable 执行之前 它会进入 else 语句并完成条件 而不在开始时检查 if
  • 如何使用 PySpark 将 CSV 文件读取为数据帧时跳过行?

    我有一个 CSV 文件 其结构如下 Header Blank Row Col1 Col2 1 200 1 456 2 000 3 450 我在阅读该文件时遇到两个问题 我想忽略标题并忽略空白行 值中的逗号不是分隔符 这是我尝试过的 df s
  • 使用 Hibernate 避免 Oracle 选择时从日期到时间戳的隐式转换

    我使用 Hibernate 3 2 7 GA 标准查询从 Oracle Enterprise Edition 10 2 0 4 0 数据库中选择行 并按时间戳字段进行筛选 有问题的字段是类型java util Date在 Java 中 以及
  • GCM 返回空消息类型

    我创建了一个使用 GoogleCloudMessaging 的应用程序 应用程序可以注册到 gcm 并将其注册 ID 存储到我服务器上的数据库中 我正在使用 php 来发送推送通知 但是当 google 将其发送到我的设备时 意图服务发现其
  • 使用 SQL REGEXP 忽略数字并仅获取字符串和“/”

    我有一个 MySQL 表 其中有一列 typevarchar 255 它保存以下格式的数据 400 mg 50 12 5 mg ml 20 mikrog 500 mg 400 IU 60 mikrog 15 mikrog 在某些情况下 我需
  • 设置可由我的网络上的其他设备访问的 Django 开发服务器

    我想设置一个 Django 开发服务器 我的计算机和智能手机都可以通过 Wi Fi 在我的网络上访问该服务器 我已经设置了我的计算机可以访问的开发服务器http 127 0 0 1 8000 http 127 0 0 1 8000 但是 我
  • 如何向 c3.js 图表添加标题

    任何人都可以建议我向 C3 js 折线图和条形图添加标题的方法吗 我有以下示例 但它用于仪表图表 对于任何 c3 图表 是否有任何选项可以设置图表标题 donut title Title 这是谷歌的热门结果 所以我想我应该补充一点 它现在是
  • 固定背景封面在移动视图中放大

    我在这里为我的网站使用固定背景封面 http www datisdesign com http www datisdesign com 每个页面都有一个很大的标题图像 但在手机等小型设备中 封面图像变得很大 我想让它在移动设备上变得更小 这
  • 虚假评论数据集

    互联网上有包含常见垃圾邮件的数据集 但我需要包含虚假评论的数据集来进行一些研究 但我找不到任何数据集 有人能给我关于在哪里可以获得虚假评论数据集的建议吗 我们的数据集可以在我的康奈尔大学主页上找到 http www cs cornell e
  • 强制下载mp4文件

    我想强迫用户下载 YouTube 视频 例如this http goo gl zNUlV网址 我下载了视频 可以播放原始视频 但即使视频的长度 大小相同 我在强制下载时也无法播放 function force download file v
  • 保留 WinRT 应用程序设置的最佳方式?

    我正在开发一个 WinRT 应用程序 它实际上也是一个游戏 我需要以文件或其他方式保存不同的信息 例如音频设置或播放器统计信息 如果它是一个文件 只需将设置写入或 我有一个想法 但我认为太初级了 获得这个的最佳方法是什么 非常感谢任何帮助或
  • PostgreSQL 字符串转义设置

    我有 2 台服务器 S1 S2与相同的SELECT version 使用相同的数据库test包含一个表t1具有类型的列text 我尝试插入 2 个带有符号的字符串数组 其中之一 INSERT into t1 columnname VALUE
  • 如何获取Scala函数的参数/返回类型?

    我有一个函数 想要获取它的参数类型和返回类型以在 Scala 宏中使用 scala gt val fn a String b Double gt 123 fn String Double gt Int
  • 尝试远程连接到 websphere 上的 JMS 队列时出现 sun/io/MalformedInputException

    我知道 非常 类似的问题 https stackoverflow com questions 27272877 how to solve sun io malformedinputexception during jndi lookup o
  • 找不到模块“反应”

    我正在尝试将 React 集成到现有的网页中 目前 我无法加载我的 React 应用程序 我的 React 应用程序有两个文件 这时 他们的样子是这样的 myApp js import React from react import Rea