我正在嘗試獲得角度2應用程序的工作,並且遇到升級適配器的一些問題。Angular 2安裝問題
這裏是我的代碼:
boot.ts
/// <reference path="..\..\typings\main.d.ts" />
import {bootstrap} from 'angular2/platform/browser'
import {UpgradeAdapter} from 'angular2/upgrade';
export const upgradeAdapter = new UpgradeAdapter();
import {AppComponent} from './app.component';
bootstrap(AppComponent);
angular.module('app', []).directive('myApp', upgradeAdapter.downgradeNg2Component(AppComponent));
此代碼拋出以下異常,當我試圖用我的打字稿一飲而盡行動進行編譯。
gulp:src \ app \ boot.ts(11,46):錯誤TS2345:類型'Function'的參數不可分配給類型爲'any []'的參數。 在線:1 char:1 + gulp編譯-ts + ~~~~~~~~~~~~~~~~類型信息:(src \ app \ boot.ts ... f類型'any []'.: String)[],RemoteException + FullyQualifiedErrorId:NativeCommandError
類型'Function'中缺少屬性'push'。
現在,如果我在boot.ts中手動創建了這樣的指令,則不會發生錯誤。
angular.module('app', []).directive('tabsPane', TabsPane);
function TabsPane(itemTabs) {
return {
restrict: 'E'
};
}
所以obviouslly東西在upgradeAdapter.downgradeNg2Component(AppComponent)發生的事情,但我想不出什麼。
似乎只有在返回「any」的downgradeNg2Component和指向期望IDirectiveFactory的指令()之間存在類型問題,但這是來自角度2樣本的確切格式,所以我不知道還有什麼可以嘗試的。
任何想法?謝謝。
除了如何將upgradeAdapter轉換爲IDirectiveFactory,這個答案和大約10個月前由OP提供的答案有什麼區別嗎? – silencedmessage