gpt4 book ai didi

angularjs - 我如何解决 ParseError : 'import' and 'export' may appear only with 'sourceType: module' when importing UpgradeAdapter?

转载 作者:搜寻专家 更新时间:2023-10-30 21:40:32 25 4
gpt4 key购买 nike

我正在尝试将现有的 anguar.js 应用程序升级到 Angular 2,遵循 https://angular.io/docs/ts/latest/guide/upgrade.html .

该应用程序已经使用 Typescript 编写,我们正在使用 browserify 和 tsify 来编译和捆绑该应用程序。

在使用 npm 安装 angular 2 依赖项并尝试引导混合应用程序后,browserify 给我以下错误:

/my-project/node_modules/@angular/upgrade/static.js:8
export { downgradeComponent } from './src/aot/downgrade_component';
^
ParseError: 'import' and 'export' may appear only with 'sourceType: module'

错误仅在添加以下代码后出现:

import {platformBrowserDynamic} from '@angular/platform-browser-dynamic';
import {AppModule} from './app.module';
import {UpgradeModule} from '@angular/upgrade/static';

platformBrowserDynamic().bootstrapModule(AppModule).then(platformRef => {
const upgrade = platformRef.injector.get(UpgradeModule) as UpgradeModule;
upgrade.bootstrap(document.documentElement, ['sagaDesktopApp']);
});

这是我的tsconfig.json:

{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"moduleResolution": "node",
"sourceMap": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"removeComments": false,
"noImplicitAny": false,
"suppressImplicitAnyIndexErrors": true
}
}

非常感谢任何帮助。

最佳答案

我已经重现了这个问题。这与 @angular/upgrade 中有一个 static.js 文件以及当 Browserify 尝试解析 @angular/upgrade/static 它解析为:

node_modules/@angular/upgrade/static.js

但是,其意图是解决:

node_modules/@angular/upgrade/static/package.json

static 目录中的 package.json 包含一个 main 条目,供非 ES6 打包器(如 Browserify)使用。

Browserify 模仿 Node's module resolution mechanism它应该在目录之前检查文件,因此要解决此问题,请在导入后附加一个尾部斜杠:

import { UpgradeModule } from '@angular/upgrade/static/';

然后 Browserify 将首先检查目录并将 package.json 解析为包。

如果您有兴趣,可以在this Tsify issue 中找到关于package.json 文件的main/module 的更多信息。 .

关于angularjs - 我如何解决 ParseError : 'import' and 'export' may appear only with 'sourceType: module' when importing UpgradeAdapter?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41840025/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com