私の連絡先情報
郵便メール:
2024-07-12
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
P85 には、製品を公開して「次へ」をクリックした後、仕様が表示されないことがわかりました。
コンソールを開いて、「Each...」エラーのエラーを見つけます。
問題の原因を確認したところ、返されたグループ内の個々のグループの関連属性 (属性) null の可能性があります
したがって、現時点では、バックエンドによって返される属性が null であってはいけないことを確認する必要があります。
方法 1: バックエンド フィルタリング: バックエンド実装クラスを使用して、属性が null であるグループを判断して除外します。
- **
- * 根据分类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;
- }
方法 2: if 判定をフロントエンドページに追加します。showBaseAttrs()
メソッド内for each
前に 1 つ追加します判断があれば
if (item.attrs != null && item.attrs.length > 0)