ruby-on-rails - React Rails Uncaught SyntaxError: Unexpected token '!'
问题描述
我想知道如何解决以下错误:
Uncaught SyntaxError: Unexpected token '!'
对应的行是:
return new !(function webpackMissingModule() { var e = new Error("Cannot find module 'leaflet'"); e.code = 'MODULE_NOT_FOUND'; throw e; }()).Attribution(props);
这是我的反应组件代码: app/javascripts/components/squad_map.jsx
import React from "react";
import { Map, Marker, Popup, TileLayer } from "react-leaflet";
import PropTypes from "prop-types";
class SquadMap extends React.Component {
constructor() {
super();
this.state = {};
}
render() {
return (
<React.Fragment>
<p>SquadMap</p>
</React.Fragment>
);
}
}
export default SquadMap;
应用程序/javascripts/packs/application.js
import "core-js/stable";
import "regenerator-runtime/runtime";
require("@rails/ujs").start();
require("turbolinks").start();
require("@rails/activestorage").start();
require("channels");
var componentRequireContext = require.context("components", true);
var ReactRailsUJS = require("react_ujs");
ReactRailsUJS.useContext(componentRequireContext);
require("trix");
require("@rails/actiontext");
提前致谢
解决方案
通过以下方式升级到最新版本解决了这个问题: $ npm outdated -> $ npm update [PACKAGE_NAME] 并且还配置了 babel 代码转译。
推荐阅读
- android - 无法解析 android.support.design。迁移到 AndroidX 后
- javascript - Instascan QR 码扫描仪“扫描”侦听器不会更新 Angular 5 组件视图
- c# - 使用 XmlDocument 向元素添加命名空间的正确方法
- docker - 将网络分配给一项服务是否会将其与 docker-compose 中的其他服务隔离开来?
- ruby-on-rails - 使用 'bundle exec rake db:create' 时,rake 总是中止如何解决?
- android - 启动器图标(仅限旧版)显示白色背景图标 android studio 3.3
- python - RecursionError:比较超过最大递归深度
- pandas - 什么是 pyarrow 表?它会替代熊猫数据框吗?
- amazon-s3 - 在 Amazon Athena 中创建内部表
- javascript - Parse.User.logIn 卡住了