Visual Studio не распознает пакеты машинописи

Я создал приложение sharepointaddin и добавил 3 новых элемента ts (app.component, app.module, main) и реализую эти файлы типов как обычные, но при запуске выдает эти исключения; введите описание изображения здесь а вот содержимое файлов ts;

app.component.ts

import { Component, ViewEncapsulation } from '@angular/core';
@Component({
    selector: 'app-root',
    templateUrl: './app.component.html',
})
export class AppComponent {
    message;
    constructor() {
        this.message = "Teddsdtddsad";
    }
}

app.module.ts

import { BrowserModule } from '@angular/platform-browser';
import { NgModule } from '@angular/core';
import { AppComponent } from './app.component';

@NgModule({
    declarations: [
        AppComponent 
    ],
    imports: [
        BrowserModule,
        FormsModule,
        HttpModule
    ],
    providers: [],
    bootstrap: [AppComponent]
})
export class AppModule { }

main.ts

import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { enableProdMode } from '@angular/core';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule);

а с другой стороны, все пакеты, импортированные в ts-файлы, подчеркнуты и говорят следующее: введите описание изображения здесь

Как я могу это исправить? Примечание: все пакеты уже установлены; введите описание изображения здесь

1 ответ

Решение

1) Typescript фактически не управляет модулями / пакетами. Он просто имеет языковую поддержку синтаксиса ES2015. Вы должны добавить файл js менеджера модулей, например AMD, и выбрать его в файле конфигурации или в проекте -> свойства -> Typescript Build.

2) Попробуйте добавить "./" в путь к модулю. Пример: import { enableProdMode } из './@angular/core';

3) вы используете внешние модули или просто пространства имен? Пространства имен имеют другой синтаксис.

Другие вопросы по тегам