我正在尝试使用导入关键字。我的ASP中的jsx文件。NETMVC5项目。我希望能够将其他React组件导入到另一个React组件中,但是,在使用import关键字时,出现以下错误:
未捕获的SyntaxError:无法在模块外部使用导入语句
下面是我的代码:
我ndex.cshtml:
@{
Layout = null;
}
<html>
<head>
<title>Hello React</title>
</head>
<body>
<div id="content"></div>
<script crossorigin src="https://cdnjs.cloudflare.com/ajax/libs/react/16.13.0/umd/react.development.js"></script>
<script crossorigin src="https://cdnjs.cloudflare.com/ajax/libs/react-dom/16.13.0/umd/react-dom.development.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/remarkable/1.7.1/remarkable.min.js"></script>
<script src="@Url.Content("~/Scripts/Tutorial.jsx")"></script>
</body>
</html>
辅导的jsx:
import Comment from '../Scripts/Comment.jsx';
class Tutorial extends React.Component {
render() {
return (
<div className="commentBox">
<h1>Homepage</h1>
<Comment />
</div>
);
}
}
ReactDOM.render(<Comment />, document.getElementById('content'));
议论jsx:
class Comment extends React.Component {
render() {
return (
<p>I am a comment!</p>
);
}
}
export default Comment;
如果我没有导入,或者如果我直接在教程中添加注释类。jsx,运行良好,但这不是我想要的。我希望能够将我的所有组件放在不同的位置。jsx文件,并且能够将某些组件导入到不同的组件中。思想?
编辑:固定导出默认注释,但错误仍然出现
您需要正确导出注释
组件。此时您正在执行导出默认测试。
class Comment extends React.Component {
render() {
return (
<p>I am a comment!</p>
);
}
}
export default Comment; //<------- see here
当出现时,会导致错误"不能在模块外使用导入语句"
导入语句要求将脚本文件Tutorial.jsx声明为模块。向
添加带有值
模块
的type
属性
见本页顶部的第一段https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import
除非嵌入式脚本具有type=“module”,否则不能在嵌入式脚本中使用import语句。
在HTML页面中,更改:
<script src="@Url.Content("~/Scripts/Tutorial.jsx")"></script>
到
<script type="module" src="@Url.Content("~/Scripts/Tutorial.jsx")"></script>
我正在使用ArcGIS JSAPI 4.12,并希望使用空间错觉在地图上绘制军事符号。 当我向脚本添加时,控制台返回错误 未捕获的SyntaxError:无法在模块外部使用导入语句` 因此,我将添加到脚本中,然后它返回 未捕获的引用错误:未定义ms 这是我的密码: 因此,无论我是否添加,都会出现错误。然而,在空间幻觉的官方文件中,脚本中没有任何。我现在真的很困惑。他们如何在不添加类型的情况下使其工
今天我决定尝试学习React,但每当我尝试导入以下两个模块时: 我得到一个错误: 未捕获的SyntaxError:无法在模块外部使用导入语句 以下是我尝试创建React程序所采取的步骤: 安装NodeJS 为什么我会出现这个错误,我该如何修复它?
对于个人项目,我试图使用ES6导入来编写更干净的代码。作为第一个测试,我正在编写一个应该生成菜单的对象。当我直接加载类时,整个代码都在工作,但是当在ES6中使用导入和导出时,它在中的行上给出了一个“未捕获的同步错误:意外标识符”错误 我有以下文件: assets/js/menu。单元js assets/js/main。js index.html 请注意,这些只是相关的代码行。 使用
我有一本书。节点js(07.10.19版本的node.js的最新版本)应用程序中的ts文件,带有导入节点模块而无默认导出。我使用这种结构:
我有一个ApolloServer项目给我带来了麻烦,所以我想我可能会更新它,并在使用最新的巴别塔时遇到问题。我的“index.js”是: 当我运行它时,我得到了错误 首先,我试图做一些事情来说服TPTB*这是一个模块(没有成功)。所以我把“导入”改成了“要求”,这就奏效了。 但是现在我在其他文件中有大约24个“导入”给我同样的错误。 *我确信我的问题的根源是我甚至不确定是什么在抱怨这个问题。我有点
提前感谢您的帮助。 这个问题似乎已经在其他地方被提出和回答,但我相信我已经尝试了所有这些解决方案,但没有取得真正的进展。 我试图为webdriverIO创建一个自定义记者。然而,当所有导入都运行时,我得到以下错误: 无法在模块外使用导入语句 如果我试图执行文件顶部的导入语句,则会在导入WebdriverTestrasER行上出现上述错误。我可以通过使用要求来解决这个问题,但是在从@wdio/记者导