Ошибка при обнаружении ошибки при статическом разрешении значений символов с угловым AoT
Я пытаюсь настроить компиляцию AoT в своем проекте Angular 4 (без angular-cli). Я уже исправил несколько проблем, но в этом я не уверен, в чем проблема.
Это в основном ошибка, которую я получаю (отредактировано для удобства чтения):
ERROR in Error encountered resolving symbol values statically.
Only initialized variables and constants can be referenced because the value of this variable is needed by the template compiler (position 2:22 in the original .ts file),
resolving symbol BASE_ROUTES in /myapp/node_modules/myapp-common/dist/base-routes.d.ts,
resolving symbol BASE_ROUTES in /myapp/node_modules/myapp-common/dist/common_module.d.ts,
resolving symbol BASE_ROUTES in /myapp/node_modules/myapp-common/index.d.ts,
resolving symbol baseRouting in /myapp/src/app/app.routes.ts,
resolving symbol AppModule in /myapp/src/app/app.module.ts
Теперь я импортирую некоторую базовую маршрутизацию из общего модуля. В моем app.module.ts:
import { baseRouting } from './app.routes';
...
@NgModule({
imports: [
BrowserModule,
baseRouting,
...
В моем app.routes.ts:
import { BASE_ROUTES } from 'myapp-common';
...
export const baseRouting = RouterModule.forRoot(<any>BASE_ROUTES);
И, наконец, в моих общих файлах:
Base-routes.d.ts
import { Routes } from '@angular/router';
export declare const BASE_ROUTES: Routes;
и в base-rout.js
exports.BASE_ROUTES = [
{
path: 'login',
component: login_component_1.LoginComponent,
data: {
title: 'Login',
bodyClass: 'login',
trackPageView: false
}
},
...
];
Любая помощь будет оценена. Спасибо!
РЕДАКТИРОВАТЬ: я переместил BASE_ROUTES из библиотеки myapp-common в сам app.routes.ts, и, похоже, ошибка исчезла, но теперь я получаю что-то другое
ERROR in Unexpected value 'CommonModule in /myapp/node_modules/myapp-common/dist/common_module.d.ts'
imported by the module 'AppModule in /myapp/src/app/app.module.ts'. Please add a @NgModule annotation.
Я не знаю, почему я продолжаю получать эти ошибки со ссылкой на файлы.d.ts, разве они не используются только в качестве информации для печати?