10.11 父子组件之间的通信、判断数组中的元素是否全为空、小程序原生组件层级问题、在foreach中使用return不能终止循环

101 阅读1分钟

一、父子组件之间的通信

子组件

this.$emit('screenDetail', this.formData)

父组件

<screening  @screenDetail="handlerWithArg($event)"/>
  • 子组件的this.formData传给父组件就为$event

二、js 判断数组中的元素是否全为空

使用filter方法

arr.filter( a => x )返回的是数组 a是arr数组中的每一个元素,x是判断条件

if (arr.filter(item => !!item).length > 0) {
    this.amountKey = true;
    console.log('数组不为空'+ this.amountKey);
} else {
    this.amountKey = false;
    console.log('数组为空' + this.amountKey);        
  }

三、小程序原生组件层级问题

  • 问题描述:使用了外部组件和小程序原生组件,发现原生组件始终在页面最上方。
  • 解决方法:使用了<cover-view>:覆盖在原生组件之上的文本视图。

四、在foreach中使用return不能终止循环

  • forEach中的return只能作用于当前循环回调函数的退出,而forEach循环仍然继续执行。