Ionic 2 - Cannot add an ion-icon inside an ion-item containing a ion-input

11,955

Solution 1

Please try ngClass as a workaround for this issue

    <ion-item> 
        <ion-input type="text" placeholder="Email"></ion-input>
        <ion-icon [ngClass]="{'hide': true }" name="ios-information-circle-outline" ></ion-icon>
    </ion-item>

    <style>.hide { display:none; } </style>

Solution 2

please check this. This is working perfectly for me in ionic2.

<ion-item class="from-group details">
<ion-label fixed>Details</ion-label>
 <ion-input type="file"></ion-input>
  <ion-icon name="ios-camera-outline" item-right ></ion-icon>
 <ion-icon ios="ios-cloud-upload" md="md-cloud-upload"  item-right ></ion-icon>

Solution 3

i am facing the same issue there is some issue in the ionic 2 for now i did it like this

<ion-row>
    <ion-col col-1>
          <ion-icon name="phone-portrait"></ion-icon>
    </ion-col>
    <ion-col col-11>
        <ion-item>
          <ion-label floating>Phone number</ion-label>
          <ion-input [(ngModel)]=" phoneNumber"  name="phoneNumber"  type="number"></ion-input>
        </ion-item>
    </ion-col>
</ion-row>
Share:
11,955
user3607282
Author by

user3607282

Updated on June 16, 2022

Comments

  • user3607282
    user3607282 almost 2 years

    I'm using Ionic 2 and on my app I'm creating a form where if there is a validation error, an information icon will appear on the right side of it's relevant input field. The HTML is as follows,

    <ion-list inset padding>
            <ion-item>
                <ion-input type="text" placeholder="Email"></ion-input>
                <ion-icon name="ios-information-circle-outline" item-right></ion-icon>
            </ion-item>
        </ion-list>
    

    This works perfectly fine. But whenever I add an *ngIf onto the ion-icon, it disappears from the ui. Here is a sample where I've set *ngIf to true to see if it works. The icon does not show.

    <ion-list inset padding>
            <ion-item>
                <ion-input type="text" placeholder="Email"></ion-input>
                <ion-icon name="ios-information-circle-outline" item-right *ngIf="true"></ion-icon>
            </ion-item>
        </ion-list>
    

    When the <ion-input> is removed from above example, the <ion-icon> shows.

    Is this a restriction in Ionic 2? How do I add an icon inside an ion-item which contains an ion-input?

  • Yokesh Varadhan
    Yokesh Varadhan almost 7 years
    if you add a border color you could see the difference