Не могу получить Angular 8 на ru - PullRequest
0 голосов
/ 25 января 2020

Я получаю ошибки следующего вида при запуске Angular 8:

ERROR in ./src/common/directives/app-launcher/app-launcher.component.html 1:0
Module parse failed: Unexpected token (1:0)
You may need an appropriate loader to handle this file type, currently no loaders are configured 
to process this file. See https://webpack.js.org/concepts#loaders
> <div *ngIf="_allowed">
|   <div (click)="launch()">
|         <span>{{ app.name }}</span>

Ничего хитрого или странного.

angular -cli --version:

Angular CLI: 8.3.23
Node: 12.13.1
OS: darwin x64
Angular: 8.2.14
... animations, common, compiler, compiler-cli, core, forms
... language-service, platform-browser, platform-browser-dynamic
... router

Package                           Version
-----------------------------------------------------------
@angular-devkit/architect         0.803.23
@angular-devkit/build-angular     0.803.23
@angular-devkit/build-optimizer   0.803.23
@angular-devkit/build-webpack     0.803.23
@angular-devkit/core              8.3.23
@angular-devkit/schematics        8.3.23
@angular/cli                      8.3.23
@ngtools/webpack                  8.3.23
@schematics/angular               8.3.23
@schematics/update                0.803.23
rxjs                              6.4.0
typescript                        3.5.3
webpack                           4.39.2

Вот код: app-launcher.component. html

<div *ngIf="_allowed">
    <div (click)="launch()">
        <span>{{ app.name }}</span>
        <div [hidden]="!app.invalid">
            <div>Error opening {{ app.name }}.</div>
        </div>
    </div>
</div>

app-launcher.component.ts

import { Component, Input, OnInit } from '@angular/core';
import { Router } from '@angular/router';
import { MyApp, MyUser } from '../../models';
import { UserService, PermissionService } from '../../services';

declare var require: any;

@Component({
    selector: 'app-launcher',
    template: require('./app-launcher.component.html')
})
export class AppLauncherComponent implements OnInit {
    @Input()
    private app: MyApp;
    private _allowed: boolean;
    private _user: MyUser;

    constructor(private router: Router, private permissionService: PermissionService, userService: UserService) {
        this._user = userService.getUser();
    }

    ngOnInit(): void {
        this._allowed = this.permissionService.permitted(this._user, this.app.privilege);
    }

    launch() {
        if (this._allowed) {
            this.router.navigate([this.app.route]);
        }
    }

    get allowed(): boolean {
        return this._allowed;
    }
}

Вот краткая версия содержащий модуль:

import { NgModule, ModuleWithProviders } from '@angular/core';
import { CommonModule } from '@angular/common';
import { RouterModule } from '@angular/router';
import { AppLauncherComponent } from './directives';

@NgModule({
    imports: [
        CommonModule,
        RouterModule,
        HttpClientModule
    ],
    exports: [
        AppLauncherComponent
    ],
    declarations: [
        AppLauncherComponent
    ],
    providers: [ ]
})
export class SharedModule {
}

Я не думаю, что это сам компонент. Я что-то упустил в настройке. Это сообщение об ошибке в веб-пакете.

Код работает в более старых версиях angular (6).

Кто-нибудь видел что-нибудь похожее на это? 3-й день пытаюсь разобраться.

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...