angular 2 rc2シードプロジェクトでng2-bootstrapラジオボタンを使用しようとしています。次のコードは、angular 2 rc1 プロジェクトで問題なく動作します。現在、ベースとして使用してシード プロジェクトを作成しようとしてhttps://github.com/mgechev/angular2-seed
いますが、適切に作成できません。
次の方法で ng2-bootstrap radio-buttons ディレクティブを使用します。
<div class="btn btn-primary" [(ngModel)]="mode" btnRadio="EDITOR" uncheckable>
Editor
</div>
ng2-bootstrap と moment ライブラリをseed.config.tsに含めます。私は多くの変種を試しました(また、ng2-bootstrap/ng2-bootstrap
なども)
paths: {
...
'ng2-bootstrap': `${this.NPM_BASE}/ng2-bootstrap/`,
'moment': `${this.NPM_BASE}moment/`
},
packages: {
...
'ng2-bootstrap': { main: "ng2-bootstrap.js", defaultExtension: 'js' },
'moment': { main: "moment.js", defaultExtension: 'js' },
}
次のディレクティブをインポートします
import { BUTTON_DIRECTIVES } from 'ng2-bootstrap/ng2-bootstrap';
import { ButtonRadioDirective } from 'ng2-bootstrap/ng2-bootstrap';
そして、これを私のコンポーネントで使用します
@Component({
moduleId: module.id,
selector: "editor",
templateUrl: "editor.html",
directives: [FORM_DIRECTIVES, CORE_DIRECTIVES, BUTTON_DIRECTIVES,
CodeMirrorComponent, ButtonRadioDirective]
})
問題なくプロジェクトをビルドしますが、サーバーを実行すると、次の実行時例外が発生します。
ORIGINAL EXCEPTION: No value accessor for ''
ここで ngModel への双方向バインディングが壊れていると確信しています。このコードを rc1 バンドルとシード プロジェクトなしで使用しました。今、何が問題になるのかわかりません-新しいAngularバージョン、またはビルドシステムの使用(私の場合-gulp)。
誰でもアドバイスをいただければ幸いです。よろしくお願いします。
2016 年 6 月 21 日以降に編集
使用するパッケージのバージョンは次のとおりです。
"dependencies": {
"@angular/common": "2.0.0-rc.2",
"@angular/compiler": "2.0.0-rc.2",
"@angular/core": "2.0.0-rc.2",
"@angular/forms": "^0.1.0",
"@angular/platform-browser": "2.0.0-rc.2",
"@angular/platform-browser-dynamic": "2.0.0-rc.2",
"@angular/router": "3.0.0-alpha.6",
"es6-module-loader": "^0.17.8",
"core-js": "^2.4.0",
"rxjs": "5.0.0-beta.6",
"systemjs": "0.19.26",
"zone.js": "^0.6.12",
"bootstrap": "^3.3.6",
"ng2-bootstrap": "^1.0.17"
}