vuetifyでindexofを使ったバリデーションルールが発火しない

任意の配列の中に、バリデートしたいターゲットの値が存在するかを確認したいとする。

例えばフロントで指定しているユーザーIDが本当に存在するか

など。

しかし、この時に何を試すも結果が-1(存在しないって意味)になることがある。

operatorIdExitscheck: (v) => {
    console.log('渡ってきた値は')
    console.log(v)

    console.log('データベースに存在するオペレーターのIDを全て取得')
    console.log(this.allOperatorsIds)

    const allOperatorsIds = this.allOperatorsIds;

    console.log('indexof')
    console.log(allOperatorsIds.indexOf(v))

    return (
        v == null || allOperatorsIds.indexOf(v) == -1 ||
        "このシリアルは既に登録されています。"
    );
},

console.logはできるから、渡ってきてはいる。

Customer.vueではほぼ同じことがちゃんとできているのだが・・・

↓IDを参照するので数値型に変換する必要があった

operatorIdExitscheck: (v) => {
    let allOperatorsIds = this.allOperatorsIds;
    return (
        v == null || allOperatorsIds.indexOf(Number(v)) != -1 ||
        "このオペレーターIDは存在しません。"
    )
},
無制限に質問可能なプログラミングスクール!

万が一転職できない場合は、転職保障全額返金できるコースもあり!!

無制限のメンター質問対応

 

DMMウェブキャンプでプログラミングを学習しませんか?

独学より成長スピードをブーストさせましょう!

 

まずは無料相談から!

おすすめの記事