我将把这个d3gauge.js文件导入我的angular2组件memmon.component.ts文件.

import '../../../../js/d3gauge.js';
export class MemMonComponent {
    createMemGauge() {
        new drawGauge(this.opt);  //drawGauge() is a function inside d3gauge.js
    }
}

在相应的模板文件中,添加

<script src="../../../../js/d3gauge.js"></script>

但它不起作用,找不到.

所以

  1. 将外部js文件导入angular2的正确步骤是什么?
  2. 既然我用的是webpack,那我可以用webpack吗?我指的是question,由于.ensure无法解决,那里的网页包解决方案对我不起作用.

推荐答案

理想情况下,你需要有.d.ts个打字文件才能让Linting个工作.

但是d3gauge似乎没有一个,你可以要求开发者提供,希望他们会听.


或者,您可以通过这样做来解决这个特定问题

declare var drawGauge: any;

import '../../../../js/d3gauge.js';
export class MemMonComponent {
    createMemGauge() {
        new drawGauge(this.opt);  //drawGauge() is a function inside d3gauge.js
    }
}

如果在多个文件中使用,可以创建一个包含以下内容的d3gauage.d.ts文件

declare var drawGauge: any;

并在顶部的boot.ts( bootstrap )文件中引用它,如下所示

///<reference path="../path/to/d3gauage.d.ts"/>

Angular相关问答推荐

使用多个管道时Angel 17空数据

从Observatory的订阅方法外正确接收JSON数据

从、管道和映射可观察到的逻辑?

Angular 17:在MouseOver事件上 Select 子组件的正确ElementRef

NGX- colored颜色 Select 器安装出错

如何从URL中角下载图片?

如何使用formBuilder.Group()从角形表单中删除选定的选项?

所有返回缺少权限或权限不足的FireBase项目.

使用 Angular 类构造函数来获取依赖项

根据最后发出的 observable 创建一个 observable

当访问令牌在 MSAL for Angular 中过期时如何重定向用户?

Rxjs Observable:仅为第一个订阅者获取 HTTP 数据,为其余订阅者获取缓存数据

angular 13 ng 构建库失败(ivy部分编译模式)

如何以像素为单位将属性绑定到 style.width?

获取从(keypress)angular2按下的键

如何手动延迟加载模块?

Mat-autocomplete - 如何访问选定的选项?

RxJS:takeUntil() Angular 组件的 ngOnDestroy()

如何将从后端渲染的参数传递给angular2 bootstrap 方法

如何在 Angular 中使用 router.navigateByUrl 和 router.navigate