下面的代码在 Angular 8 中运行。但我需要在 Angular 6 中执行它。我该如何实现呢?

Posted

技术标签:

【中文标题】下面的代码在 Angular 8 中运行。但我需要在 Angular 6 中执行它。我该如何实现呢?【英文标题】:Below code is working in Angular 8. But I need to execute it in Angular 6. How can i achieve this? 【发布时间】:2020-04-12 21:02:50 【问题描述】:

此代码按预期在 Angular 8 中运行:

declare var GlgToolkit: any;

import  Component, OnInit  from '@angular/core';

@Component(
    selector: 'app-glg-dashboard',
    templateUrl: './glg-dashboard.component.html',
    styleUrls: ['./glg-dashboard.component.scss']
)
export class GlgDashboardComponent implements OnInit 
    glg = new GlgToolkit();

    constructor()  

    ngOnInit() 

当我在 Angular 6 中使用相同的代码时会报错:

错误错误:未捕获(承诺):ReferenceError:GlgToolkit 不是 已定义 ReferenceError:未定义 GlgToolkit 在新的 GlgDashboardComponent (glg-dashboard.component.ts:16) 在 createClass (core.js:9084) 在 createDirectiveInstance (core.js:8971) 在 createViewNodes (core.js:10191) 在 createRootView (core.js:10105) 在 callWithDebugContext (core.js:11136) 在 Object.debugCreateRootView [as createRootView] (core.js:10623) 在 ComponentFactory_.push../node_modules/@angular/core/fesm5/core.js.ComponentFactory_.create (core.js:8451) 在 ComponentFactoryBoundToModule.push../node_modules/@angular/core/fesm5/core.js.ComponentFactoryBoundToModule.create (core.js:3265) 在 ViewContainerRef_.push../node_modules/@angular/core/fesm5/core.js.ViewContainerRef_.createComponent (core.js:8561) 在 resolvePromise (zone.js:814) 在 resolvePromise (zone.js:771) 在 zone.js:873 在 ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:421) 在 Object.onInvokeTask (core.js:3751) 在 ZoneDelegate.push../node_modules/zone.js/dist/zone.js.ZoneDelegate.invokeTask (zone.js:420) 在 Zone.push../node_modules/zone.js/dist/zone.js.Zone.runTask (zone.js:188) 在 drainMicroTaskQueue (zone.js:595)

【问题讨论】:

你需要为 Angular 6 找到兼容的 GlgToolkit 版本 我有所有支持 GLG 的库.. 【参考方案1】:

我已经通过在 index.html 中添加以下行来解决这个问题。

  <script defer src="assets/Js/GlgToolkitCE.js"></script>

它对我有用。

【讨论】:

以上是关于下面的代码在 Angular 8 中运行。但我需要在 Angular 6 中执行它。我该如何实现呢?的主要内容,如果未能解决你的问题,请参考以下文章

升级到 Angular 8 后出现 d3.js 运行时错误

如何在 Angular 中使用 Datalist Dropdown 预选值?

ng serve 命令需要在 Angular 项目中运行,但找不到项目定义

使用 Node js 将 Angular 应用程序作为 docker 镜像运行

Angular 8 - 如何使用 ngxbootstrap/datepicker 仅显示日期和月份

为啥订阅在 Angular 中没有 Observable 的情况下工作