4

我有一个使用以下指令的简单 Ionic2 组件:

@View({
  templateUrl: 'build/components/checkinDateInput/checkinDateInput.html',
  directives: [ FocusDirective, Item, Label, TextInput ],
})

测试时我收到一个错误:No provider for Form! (Item -> Form)

我尝试将提供程序添加到我的规范中:

beforeEachProviders(() => [Form]);

但是,Form在 Ionic 中是私有的,因此我似乎无法导入它(ionic-framework/util/form.d.ts):

/**
 * @private
 */
export declare class Form {
    private _blur;
...

error TS2305: Module '".../node_modules/ionic-framework/ionic"' has no exported member 'Form'.

由于它不能被导入,我不能在 beforeEachProviders 中模拟它,因为它Form是未定义的。

beforeEachProviders(() => [
    provide(Form, {useClass: MockForm})
]);

我应该能够导入Form还是我会以错误的方式进行此操作?

4

1 回答 1

3

Ionic2 的问题,在下一版本中修复

https://github.com/driftyco/ionic/commit/d27bb628fce40c644422016d054acd5c0317810d

于 2016-02-18T02:35:40.117 回答