ng build --prod无法正常工作?如何检查呢?

时间:2018-10-04 04:07:21

标签: angular typescript

我有一个角度cli应用程序。如果我使用ng serve命令运行该命令,它将正常工作。

我使用ng serve而不是使用ng build --prod。它会引发以下脚本错误:

屏幕截图:

enter image description here

我要在生产模式下检查此应用程序。

  

我在这里附上了我的代码:

import { Component, ViewChild, OnInit, ElementRef } from '@angular/core';
import { DialogComponent } from '@syncfusion/ej2-angular-popups';
import { EmitType } from '@syncfusion/ej2-base';
@Component({
  selector: 'app-root',
  templateUrl: './app.component.html',
  styleUrls: ['./app.component.css']
})
export class AppComponent {
  title="test";
  @ViewChild('ejDialog') ejDialog: DialogComponent;
  // Create element reference for dialog target element.
  @ViewChild('container', { read: ElementRef }) container: ElementRef;
  // The Dialog shows within the target element.
  public targetElement: HTMLElement;

  //To get all element of the dialog component after component get initialized.
  ngOnInit() {
    this.initilaizeTarget();
  }

  // Initialize the Dialog component target element.
  public initilaizeTarget: EmitType<object> = () => {
    this.targetElement = this.container.nativeElement.parentElement;
  }

  // Hide the Dialog when click the footer button.
  public hideDialog: EmitType<object> = () => {
      this.ejDialog.hide();
  }
  // Sample level code to handle the button click action
  public onOpenDialog = function(event:any): void {
      // Call the show method to open the Dialog
      this.ejDialog.show();
  }
  //Animation options
  public animationSettings: Object = { effect: 'Zoom', duration: 400, delay: 0 };
  // Enables the footer buttons
  public buttons: Object = [
      {
          'click': this.hideDialog.bind(this),buttonModel:{ content:'OK', isPrimary: true }
      },
      {
          'click': this.hideDialog.bind(this),buttonModel:{ content:'Cancel' }
      }
  ];
}

  

HTML文件:

<!--The content below is only a placeholder and can be replaced.-->
<div style="text-align:center">
  <h1>
    Welcome to {{ title }}!
  </h1>
  <img width="300" alt="Angular Logo" src="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyNTAgMjUwIj4KICAgIDxwYXRoIGZpbGw9IiNERDAwMzEiIGQ9Ik0xMjUgMzBMMzEuOSA2My4ybDE0LjIgMTIzLjFMMTI1IDIzMGw3OC45LTQzLjcgMTQuMi0xMjMuMXoiIC8+CiAgICA8cGF0aCBmaWxsPSIjQzMwMDJGIiBkPSJNMTI1IDMwdjIyLjItLjFWMjMwbDc4LjktNDMuNyAxNC4yLTEyMy4xTDEyNSAzMHoiIC8+CiAgICA8cGF0aCAgZmlsbD0iI0ZGRkZGRiIgZD0iTTEyNSA1Mi4xTDY2LjggMTgyLjZoMjEuN2wxMS43LTI5LjJoNDkuNGwxMS43IDI5LjJIMTgzTDEyNSA1Mi4xem0xNyA4My4zaC0zNGwxNy00MC45IDE3IDQwLjl6IiAvPgogIDwvc3ZnPg==">
</div>
<h2>Dialog Component</h2>

<button class="e-control e-btn" style="position: absolute;" id="targetButton" (click)="onOpenDialog($event)">Open Dialog</button>
<div #container class='root-container'></div>
  <ejs-dialog id='dialog' #ejDialog header='Dialog' content='Dialog enabled with Zoom effect' [target]='targetElement'
  [animationSettings]='animationSettings' width='250px' [buttons]='buttons'>
  </ejs-dialog>

如果我使用以下命令,则可以正常运行:问题出在哪里?

ng build --prod --no-build-optimizer

2 个答案:

答案 0 :(得分:2)

ng serve --prod --aot=false --build-optimizer=true 

答案 1 :(得分:0)

num仅用于托管目的。使用ng build --prod文件夹并获取这些内容并发布或托管

DIST用于编译和测试