:style响应式,computed函数监听,循环遍历传参

 computed: {
    getData() {
      return JSON.parse(JSON.stringify(this.data));
    },
    computedStyle() {
      return (i) => {

        return {
          display: this.getData.list[i].options.flex ? "flex" : "",
          alignItems: this.getData.list[i].options.flexAlign,
          justifyContent: this.getData.list[i].options.flexJustify,
          flexFlow: "wrap",
          gap: this.getData.list[i].options.spaceSize + "px",
        };
      };
    },
  },

首先明确需求:

在this.data发生变化的时候,触发 computedStyle函数,一位内this.data是多层嵌套数据,所以在更新时需要做“序列化-反序列化”处理,确保数据是准确的,这一步是computed函数里面的getData.

在此基础上,更新:style computedStyle,因为外层有for 循环,所以我们需要传参拿到下标,在computed函数内接参需要用箭头函数return出去,即:

return(‘参数’)=>{

}

不然是拿不到参数的,怎么打印都是返回一个 VueComponent对象

你可能感兴趣的:(windows)