我有一個Vue應用程序,帶有一系列複選框,當用戶選擇複選框時,這些複選框將項目添加到數組中。有可能被選擇的約6項,但是,我需要露出一個<div>
如果2特定項目被選擇:VueJS2:如何檢查數組是否包含特定元素?
例數組,如果所有元件都被檢查:
["Apples", "Bananas", "Cucumbers", "Pears", "Peaches", "Strawberries"]
但如果只Apples
和Pears
檢查和/或如果Apples
或Pears
檢查,我需要在一組的用戶指令的視圖,露出了div
。
我試過,但沒有奏效:
<div v-if="(selectedProducts.length <= 2) && (selectedProducts.includes('Apples') || selectedProducts.includes('Pears'))">
...show mycontent...
</div>
在我VUE情況下我已經開始了數據,像這樣:
data: {
selectedProducts: []
}
什麼寫這個邏輯的正確方法是什麼?我應該在這種情況下使用array.every()方法嗎?謝謝。
我認爲你需要更換或有條件的經營者和。 ||至 &&。因爲你需要選擇的產品包括蘋果和梨selectedProducts.includes(「蘋果」)&& selectedProducts.includes(「梨」)也如果想僅特異性的2種產品中使用=== 2而不是長度<3問題 –
我的道歉,我剛剛更新了問題:我需要檢查BOTh是否被選中和/或如果其中一個被選中。抱歉! – redshift
(selectedProducts.includes('Apples')&& selectedProducts.includes('Pears'))|| (selectedProducts.includes('Apples')|| selectedProducts.includes('Pears'))?但第一條語句是多餘的,因爲你要顯示的內容是否在這兩種情況下所顯示或只是被他們展示的一個 –