首页 > 解决方案 > 在多维数组Vue中使用数组

问题描述

我有一个从 API 获取货币数组的计算属性

然后我想检查货币数组是否存在并返回它

currencies() {
        let currency =  this.$store.getters.getCurrencies;
        return this.currency.includes(this.quoteCurrency)
    },

我的数组看起来像这样:

data: 
{
    "data": [
        {
            "code": "AUD",
            "name": "Australian Dollar",
            "symbol": "$"
        },
        {
            "code": "CAD",
            "name": "Canadian Dollar",
            "symbol": "$"
        },
        {
            "code": "EUR",
            "name": "Euro",
            "symbol": "€"
        },
        {
            "code": "MXN",
            "name": "Mexican Peso",
            "symbol": "$"
        },
        {
            "code": "MAD",
            "name": "Moroccan Dirham",
            "symbol": "د.م.‏"
        },
        {
            "code": "USD",
            "name": "US Dollar",
            "symbol": "$"
        },
        {
            "code": "GBP",
            "name": "Pound Sterling",
            "symbol": "£"
        }
    ]
}

我有一个数据点

quoteCurrency: "GBP"

我得到'无法读取未定义的属性'包含''

标签: javascriptarraysvue.jsvuejs2

解决方案


你定义了一个局部变量,let所以你可能想写这个:

return currency.includes(this.quoteCurrency)

如果您需要使用,this则首先currency在您的data部分中声明并将值分配给this.currency而不是定义新变量。


推荐阅读