未捕获的TypeError:类型数组的参数,给定null

问题描述

类型数组的平均参数是什么,给定null,

错误

致命错误:未捕获的TypeError:参数3传递给 Magento \ Framework \ View \ Element \ UiComponentFactory :: mergeMetadataElement() 必须是数组类型,给定为null,在 /var/www/html/giriusa/lib/internal/Magento/Framework/View/Element/UiComponentFactory.PHP 在第384行并在 /var/www/html/giriusa/lib/internal/Magento/Framework/View/Element/UiComponentFactory.PHP:337 堆栈跟踪:#0 /var/www/html/giriusa/lib/internal/Magento/Framework/View/Element/UiComponentFactory.PHP(384): Magento \ Framework \ View \ Element \ UiComponentFactory-> mergeMetadataElement(Array, 'configurableExi ...',NULL,否)#1 /var/www/html/giriusa/lib/internal/Magento/Framework/View/Element/UiComponentFactory.PHP(412): Magento \ Framework \ View \ Element \ UiComponentFactory-> mergeMetadataItem(Array, 数组,false)#2 /var/www/html/giriusa/lib/internal/Magento/Framework/View/Element/UiComponentFactory.PHP(412): Magento \ Framework \ View \ Element \ UiComponentFactory-> mergeMetadataItem(Array, 数组,false)#3 / var / www / html / giriusa / lib / internal / Magento / Fram in /var/www/html/giriusa/lib/internal/Magento/Framework/View/Element/UiComponentFactory.PHP 在第337行

路径:lib / internal / Magento / Framework / View / Element / UiComponentFactory.PHP

UiComponentFactory :: mergeMetadataElement()必须为数组类型, 给定空值

protected function mergeMetadataElement(array $bundleComponents,$name,array $data,$reverseMerge = false)
{
    if (isset($bundleComponents[$name])) {
        $bundleComponents[$name] = $reverseMerge
            ? array_replace_recursive($data,$bundleComponents[$name])
            : array_replace_recursive($bundleComponents[$name],$data);
        return [$bundleComponents,true];
    } else {
        foreach ($bundleComponents as &$childData) {
            if (isset($childData['attributes']['class'])
                && is_a($childData['attributes']['class'],\Magento\Ui\Component\Container::class,true)
                && isset($childData['children']) && is_array($childData['children'])
            ) {
                list($childData['children'],$isMerged) = $this->mergeMetadataElement(
                    $childData['children'],$data,$reverseMerge
                );
                if ($isMerged) {
                    return [$bundleComponents,true];
                }
            }
        }
    }
    return [$bundleComponents,false];
}

注意:从1.9迁移后,出现上述错误之前,其正常工作。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)