У меня проблема с получением проекта Angular 7 среднего размера для использования на конвейерах разработки Azure.Поэтому я создал минимальный проект, чтобы воссоздать проблему.
Используя Angular CLI (7.2.4), я создал новый проект
ng new minimal-app
Он прекрасно собирается локально и на Azure.Я отредактировал app.component.ts, чтобы использовать мой UserModel, строки 2, 11 и 14
import {Component} from '@angular/core';
import {UserModel} from '../Models/User.model';
@Component({
selector: 'app-root',
templateUrl: './app.component.html',
styleUrls: ['./app.component.css']
})
export class AppComponent {
title = 'minimal-app';
user = new UserModel();
constructor() {
this.user.name = 'Jo';
}
}
, файл User.model.ts содержит
export class UserModel {
id: number;
name: string;
}
Это также компилируется на локальном иЛазурь просто отлично.Проблема возникает при попытке добавить вложенную модель, см. Action.model.ts
export class ActionModel {
id: number;
datetime: string;
}
и изменение UserModel
import {ActionModel} from './Action.Model';
export class UserModel {
id: number;
name: string;
actions: ActionModel[];
}
Это работает локально, но в Azure Dev Ops я получаю
ERROR in src/Models/User.model.ts(1,27): error TS2307: Cannot find module './Action.Model'.
##[error]Bash exited with code '1'
Я не изменил никаких конфигурационных файлов Angular, они все по умолчанию для нового проекта.Лазурные трубопроводы yml это
# Node.js with Angular
# Build a Node.js project that uses Angular.
# Add steps that analyze code, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/javascript
trigger:
- master
pool:
vmImage: 'ubuntu-latest'
steps:
- task: NodeTool@0
inputs:
versionSpec: '10.x'
displayName: 'Install Node.js'
- script: |
npm install -g @angular/cli
npm install
ng build --prod
displayName: 'npm install and build'