首页 > 解决方案 > 我的数组上的javascript过滤方法有问题吗?

问题描述

在我的 json_encoded PHP 数组上使用过滤器函数时出现以下错误。

Error in render: "TypeError: this.globals.navLinks.filter is not a function"

这是我在使用 json_encode 并将其作为道具传递给我使用过滤器功能的组件之前的数组原始形状。

$globals['navLinks'] = [
            'Inicio' => [ 'name' => 'Inicio', 'url' => '/' , 'hasSublinks' => false, 'sublinks' => [], 'isVisible' => true ],
            'Quienes somos' => [ 'name' => 'Quienes somos', 'url' => '/#quienes-somos' , 'hasSublinks' => false, 'sublinks' => [], 'isVisible' => true ],
            'Donde estamos' => [ 'name' => 'Donde estamos', 'url' => '/#donde-estamos' ,'hasSublinks' => false, 'sublinks' => [], 'isVisible' => true ],
            'Contactar' => [ 'name' => 'Contactar', 'url' => '/contactar' , 'hasSublinks' => false, 'sublinks' => [], 'isVisible' => true ],
            'Descuentos' => [ 'name' => 'Descuentos', 'url' => '/descuentos' , 'hasSublinks' => true, 'sublinks' => $discounts, 'isVisible' => true ],
            'Eventos' => [ 'name' => 'Eventos', 'url' => '/eventos' , 'hasSublinks' => true, 'sublinks' => $events, 'isVisible' => true ],
        ];

以及给我错误的功能。

visibleLinks: function(){
        return this.globals.navLinks.filter(link => link.isVisible && !link.hasSublinks || link.isVisible && link.hasSublinks && link.sublinks.length > 0);
    }

知道如何过滤我的数组吗?为什么我会收到此错误?

标签: javascript

解决方案


推荐阅读