Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ionic-framework/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript Ionic v4.12 Ionic picker找不到任何方法来处理列的选定项更改_Typescript_Ionic Framework - Fatal编程技术网

Typescript Ionic v4.12 Ionic picker找不到任何方法来处理列的选定项更改

Typescript Ionic v4.12 Ionic picker找不到任何方法来处理列的选定项更改,typescript,ionic-framework,Typescript,Ionic Framework,我使用ionic V4.12的离子选择器组件,我有3列。当我选择第一列中的一个项目时,我需要筛选第二列中的项目,但我找不到任何解决问题的方法 我发现PickerColumn有刷新功能,但仍然不能工作 import { PickerController } from '@ionic/angular'; @Component({ ... }) export class ComponentPage { constructor(public pickerCtrl: PickerControll

我使用ionic V4.12的离子选择器组件,我有3列。当我选择第一列中的一个项目时,我需要筛选第二列中的项目,但我找不到任何解决问题的方法

我发现PickerColumn有刷新功能,但仍然不能工作

import { PickerController } from '@ionic/angular';

@Component({
  ...
})
export class ComponentPage {
  constructor(public pickerCtrl: PickerController) { }

  async openPicker() {
    const picker = await this.pickerCtrl.create({
      buttons: [{
        text: 'Done',
      }],
      columns: [
        {
          name: 'days',
          options: [
            {
              text: '1',
              value: 1
            },
            {
              text: '2',
              value: 2
            },
            {
              text: '3',
              value: 3
            },
          ]
        },
        {
          name: 'years',
          options: [
            {
              text: '1992',
              value: 1992
            },
            {
              text: '1993',
              value: 1993
            },
            {
              text: '1994',
              value: 1994
            },
          ]
        },
      ]
    });
    await picker.present();
  }
}

当我选择1 on days列时,我只想显示名为1994的项目。

我向爱奥尼亚团队发出请求,答案是listen-ionPickerColChange偶数

picker.addEventListener('ionPickerColChange', async (event: any) => {
     here handle some logic
} 

您可以像这样收听OnDidDisclesh方法:

async openPicker() {
    const picker = await this.pickerCtrl.create({
      buttons: [{
        text: 'Done',
      }],
      columns: [
        {
          name: 'days',
          options: [
            {
              text: '1',
              value: 1
            },
            {
              text: '2',
              value: 2
            },
            {
              text: '3',
              value: 3
            },
          ]
        },
        {
          name: 'years',
          options: [
            {
              text: '1992',
              value: 1992
            },
            {
              text: '1993',
              value: 1993
            },
            {
              text: '1994',
              value: 1994
            },
          ]
        },
      ]
    });

    picker.onDidDismiss().then(({data}) => console.log(data.years.value));

    await picker.present();
  }

您好,您找到解决方案了吗?是的,只需听ionPickerColChange事件,请看以下内容:picker.addEventListener('ionPickerColChange',async(Event:any)=>{这里处理一些逻辑}