minhas informações de contato
Correspondência[email protected]
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
P85 fala sobre a publicação de um produto e após clicar em Avançar, descubro que as especificações não são exibidas.
Abra o console e encontre o erro forEach... error
Depois de verificar a causa do problema, descobri que os atributos associados de grupos individuais nos grupos retornados (atributos) pode ser nulo
Portanto, neste momento, você precisa garantir que os atributos retornados pelo back-end não possam ser nulos.
Método 1: Filtragem de back-end: Use a classe de implementação de back-end para julgar e eliminar grupos cujos atributos são nulos.
- **
- * 根据分类id查出所有分组和分组属性
- * @param catelogId
- * @return
- */
- @Override
- public List<AttrGroupWithAttrsVo> getAttrGroupWithAttrsByCatelogId(Long catelogId) {
- //获得在属性分组表中的所有属于当前分类的实体
- List<AttrGroupEntity> attrGroupEntities = this.list(new QueryWrapper<AttrGroupEntity>().eq("catelog_id", catelogId));
- List<AttrGroupWithAttrsVo> collect = attrGroupEntities.stream().map((group) -> {
- AttrGroupWithAttrsVo attrsVo = new AttrGroupWithAttrsVo();
- BeanUtils.copyProperties(group,attrsVo);
- //当前分组下的所有属性(没有"valueType": 0,)
- List<AttrEntity> attr = attrService.getRelationAttr(attrsVo.getAttrGroupId());
- attrsVo.setAttrs(attr);
- if ( attr!=null){
- return attrsVo;
- }
- return null;
- }).collect(Collectors.toList());
- collect.removeIf(Objects::isNull);
- return collect;
- }
Método 2: adicione um julgamento à página inicial, emshowBaseAttrs()
no métodofor each
Adicione um na frentese julgamento
if (item.attrs != null && item.attrs.length > 0)