2016-12-16 3 views
0

Я использую визуальный студийный шаблон Angular2 mvc5, и я изменил его модель. И я сгенерировал типографическую версию модели с помощью TypeLite. Теперь мне нужно ссылаться на машинописный текст, но система машинописного текста не распознает их даже после восстановления проекта. Он ссылается на другой файл, когда я нажал F12 на члене модели.Asp.net Типов не работает

Структура Папка:

ProjectRoot/ 
app 
    some.component.ts 
    ... 
Scripts 
    ... 
    TypeLite.Net4.tt 
    TypeLite.Net4.d.ts 
typings (not included in project) 
    main (same) 
    ambient (same) 
    TypeLite (same) 
    index.d.ts (same) 
typings.json 
tsconfig.json 
... 

TypeLite.Net4.d.ts (представляет обновленная модель):

/// <reference path="Enums.ts" /> 

declare module Models { 
    interface BpmGraph { 
     Author: string; 
     BpmPoints: Models.BpmPoint[]; 
     Id: number; 
     SongName: string; 
     Tags: string[]; 
     TimedBy: string; 
    } 
    interface BpmPoint { 
     BpmMap: System.Collections.Generic.KeyValuePair<number, number>[]; 
     BpmMap2: System.Tuple<number, number>[]; 
     Bpms: number[]; 
     GraphId: number; 
     Id: number; 
     Times: number[]; 
    } 
    interface List { 
     Count: number; 
     CountEnded: number; 
     Id: number; 
     Name: string; 
     Tasks: Models.Task[]; 
    } 
    interface Task { 
     Ended: boolean; 
     Id: number; 
     ListId: number; 
     Name: string; 
    } 
} 
declare module Models.ViewModel { 
    interface JSONReturnVM<T> { 
     element: T; 
     errormessage: string; 
     haserror: boolean; 
    } 
} 
declare module System { 
    interface Tuple<T1, T2> { 
     Item1: T1; 
     Item2: T2; 
    } 
} 
declare module System.Collections.Generic { 
    interface KeyValuePair<TKey, TValue> { 
     Key: TKey; 
     Value: TValue; 
    } 
} 

some.component.ts:

... 
export class BpmHelperComponent { 
    constructor(private _appService: AppServiceTodoList) 
    { 

    } 


    get bpmGraph(): Models.List[] 
    { 
     return this._appService.todolist; 
    } 
... 

Index.d .ts (какой элемент модели ссылается, не обновляется):

// Generated by typings 
// Source: scripts/TypeLite.Net4.d.ts 
declare module Models { 
    interface List { 
     Count: number; 
     CountEnded: number; 
     Id: number; 
     Name: string; 
     Tasks: Models.Task[]; 
    } 
    interface Task { 
     Ended: boolean; 
     Id: number; 
     ListId: number; 
     Name: string; 
    } 
} 
declare module Models.ViewModel { 
    interface JSONReturnVM<T> { 
     element: T; 
     errormessage: string; 
     haserror: boolean; 
    } 
} 

typings.json:

{ 
    "ambientDependencies": { 
    "bootstrap": "github:DefinitelyTyped/DefinitelyTyped/bootstrap/bootstrap.d.ts#56295f5058cac7ae458540423c50ac2dcf9fc711", 
    "core-js": "registry:dt/core-js#0.0.0+20160317120654", 
    "jquery": "github:DefinitelyTyped/DefinitelyTyped/jquery/jquery.d.ts#56295f5058cac7ae458540423c50ac2dcf9fc711", 
    "TypeLite": "file:Scripts/TypeLite.Net4.d.ts" 
    } 
} 

Когда я изменил Models.List some.component.ts, чтобы Models.BpmGraph, построить не удается сказать "Сложение: 'Модели' Модуль не имеет экспортированный элемент«BpmGraph"

Что такое правильный способ обновления index.d.ts? Он говорит «Сгенерировано типизациями», но я не могу найти способ обновить этот файл.

Я попытался типизация установить, но ничего не изменилось, кроме ниже сообщения

PM> typings install --global 
[?25h 
+-- debug 
| `-- ms 
`-- mocha (global) 
+0

Запуск 'typings install'. –

+0

@AlekseyL. Я попытался, но ничего не изменилось, кроме ниже сообщения в консоли диспетчера пакетов. PM> типографские установки [? 25h + - debug | '- ms ' - mocha (глобальный) –

ответ

0

повторен типизация установки после обновления типизации (0.8.3 до 2.0.0) и преуспел. typings install сделал новую папку «global», а some.component.ts правильно ссылается. Я думаю, что эта проблема возникла из-за того, что типизация «ambient» переименовывается в глобальную.

Смежные вопросы