前提・実現したいこと
Ion-selectで選択した項目をtsファイルにバインディングする。
tsファイルに登録された内容をhtmlファイルに表示する。
該当のソースコード
html
1<!--shinki.page.html--> 2 3<!--<ion-select>の選択項目--> 4 5<ion-content> 6 <form (submit)="register()"> 7 <ion-item> 8 <ion-label>カテゴリ</ion-label> 9 <ion-select okText="完了" cancelText="キャンセル" [(ngModel)]="category"> 10 <ion-select-option value="'main'">メイン</ion-select-option> 11 <ion-select-option value="'sub'">サブ</ion-select-option> 12 <ion-select-option value="'dring'">飲み物</ion-select-option> 13 <ion-select-option value="'dessert'">デザート</ion-select-option> 14 </ion-select> 15 </ion-item> 16 <ion-button expand="block" type="submit">登録</ion-button> 17 </form> 18 19 <!--登録されたselectの内容を表示したい--> 20 <ion-list> 21 <ion-item *ngFor="let o of obj"> 22 {{o.category}} 23 </ion-item> 24 </ion-list>
typescript
1//shinki.page.ts 2 3import { Component, OnInit } from '@angular/core'; 4 5@Component({ 6 selector: 'app-shinki', 7 templateUrl: './shinki.page.html', 8 styleUrls: ['./shinki.page.scss'], 9}) 10export class ShinkiPage implements OnInit { 11 12category:"main" | "sub" | "drink" | "dessert" 13 14obj : { 15 category: "main" | "sub" | "drink" | "dessert" 16 }[] = []; 17 18//htmlの登録ボタンが押されたらobjに格納したい 19 register(){ 20 this.obj.push({ 21 category: this.category 22 }) 23 24}
試したこと
超がつくほどの初心者です。また初投稿です。情報不足等ございましたら仰ってくださいませ。
初歩的な質問であること、承知しております。申し訳ございません。
<ion-select>で項目を選択したものをオブジェクトに格納し、htmlでその表示を返したいと考えています。
私個人としましては<ion-select>内の[(ngModel)]やvalueの使い方がよくないのだと感じておりますが、解決方法がわかりません。他にも文法的にめちゃくちゃになっている部分もあろうかと思います。
どなたかご教示いただけますと幸いです。
何卒宜しくお願い致します。
補足情報(FW/ツールのバージョンなど)
Ionic version 5.4.16
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/10/03 11:24