SweetAlert 与 Angular 7

Par*_*uka 5 sweetalert angular

我正在尝试在我的 angular 项目中使用甜蜜警报。

这就是我使用甜蜜警报的方式:

import swal from 'sweetalert';

swal({
    title: "Problem",
    text: "Try again later!",
    icon: "error"
  })
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

node_modules/sweetalert/typings/sweetalert.d.ts(4,9) 中的错误:错误 TS2403:后续变量声明必须具有相同的类型。变量 'swal' 的类型必须是 'typeof import("C:/Users/user/Desktop/University/Thesis/workspace/web/myProject/project/node_modules/sweetalert/typings/sweetalert")',但这里有类型 '甜蜜警报'。

任何人都可以帮助我吗?

小智 9

编译 Angular 项目的简单解决方案是转到您的项目文件夹 \node_modules\sweetalert\typings\sweetalert.d.ts

在此文件中,只需注释 // const swal: SweetAlert;

您的最终文件如下所示:

import swal, { SweetAlert } from "./core";

declare global {
  // const swal: SweetAlert;
  const sweetAlert: SweetAlert;
}

export default swal;
export as namespace swal;
Run Code Online (Sandbox Code Playgroud)


Ger*_*zal 4

我有同样的问题,我的解决方案是这样的。

import * as _swal from 'sweetalert';
import { SweetAlert } from 'sweetalert/typings/core';

const swal: SweetAlert = _swal as any;
Run Code Online (Sandbox Code Playgroud)

由于某种原因,名称“swal”显示错误,如果您通过“_swal”更改别名,它应该可以工作