>  기사  >  웹 프론트엔드  >  storejs에서 얻은 데이터를 처리하는 vue 단계에 대한 자세한 설명

storejs에서 얻은 데이터를 처리하는 vue 단계에 대한 자세한 설명

php中世界最好的语言
php中世界最好的语言원래의
2018-04-11 14:01:202597검색

이번에는 Vue에서 storejs 데이터 수집을 처리하는 단계에 대해 자세히 설명하겠습니다. Vue에서 storejs 데이터 수집을 처리하는 주의사항은 무엇인가요?

구체적인 코드는 다음과 같습니다:

export default {
  data(){
    return {
      shopList:{},
      isEmpty:false, //判断购物车中是否有存在内容
    }
  },
  created(){
    if(!store.get('?shopCar')){
      this.isEmpty = true;
    }else{
      //对数据处理 将商店中名中的地址分离出来
      this.shopList = store.get('shopCar');
      console.log(this.shopList)
    }
  }  
}

이때 인쇄하세요:

this.shopList에 의해 표시되는 결과는 {ob: Observer}ob: Observer}

虽然可以在vue中直接使用如下:

<ul>
  <li v-for = "list in shopList" :key = "list.id">
    {{list}}
  </li>
</ul>

但是如果此时我想对this.shopList中的数据进行处理,就会出现问题,此时如果你想遍历循环该数据,就会出现意想不到的效果,因为此时打印 this.shopList.length 显示出来的结果为undefined。

遍历对象有几种方法:

1,最常用的 for循环 ,但此时length为undefined,该方法不可用;

2,for in 同上原因不可使用

3. jquery中也有遍历对象的方法 $.each(this.shopList,function(n,i){})

입니다. 다음과 같이 vue에서 직접 사용할 수 있지만:

created(){
    if(!store.get('?shopCar')){
      this.isEmpty = true;
    }else{
      //对数据处理 将商店中名中的地址分离出来
      var shopList = store.get('shopCar')
      $.each(shopList,function(n,i){
        //处理数据。。。。。
      })
      this.shopList = shopList;
      console.log(this.shopList)
    }
  }
하지만 이때 this.shopList의 데이터를 처리하려고 하면 문제가 발생합니다. 데이터를 순회하고 반복하려는 경우 this.shopList의 표시된 결과>가 발생하기 때문입니다. 코드>는 정의되지 않았습니다. <p style="text-align: left;"></p> <span style="color:#ff0000;"><strong><a href="http://www.php.cn/wiki/198.html" target="_blank">객체를 탐색하는 방법에는 여러 가지가 있습니다 <p style="text-align: left;"> : </p></a></strong></span><p style="text-align: left;"> 1. 가장 일반적으로 사용되는 <a href="http://www.php.cn/code/9672.html" target="_blank">for 루프</a></p>이지만 현재로서는 길이가 정의되지 않았으며 이 방법은 그렇지 않습니다. 가능;<p style="text-align: left;"></p> 2. 위와 같은 이유로 사용할 수 없습니다<p></p> 3. <a href="http://www.php.cn/wiki/1495.html" target="_blank">jquery<p>에는 객체를 순회하는 방법도 있습니다. <code>$.each(this.shopList,function (n,i){})

이 데이터를 탐색할 수 있는 세 번째 방법을 찾은 다음 데이터를 처리할 수 있습니다. 하지만 this.shopList 개체에 다른 개체 레이어가 포함되어 있으면 어떻게 될까요? .each()에 .each()의 또 다른 레이어가 포함되고 .each()의 또 다른 레이어가 포함되어 있다면 이 문제가 해결되지 않을까요? 이 방법 외에도 더 좋은 방법이 있습니다:
rrreee

더 간단하고 직접적인 방법은 먼저 데이터를 변수에 할당하고 원하는 형식으로 데이터를 처리한 다음 this.shopList에 복사하는 것입니다.

this.shopList에 데이터를 직접 할당하면 왜 데이터를 처리할 수 없나요?
그 이유는 this.shopList에 데이터를 할당하면 vue 데이터의 양방향 바인딩이 실현되기 때문입니다.

이 기사의 사례를 읽은 후 방법을 마스터했다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요! 🎜🎜추천 도서: 🎜🎜🎜vuejs에서 v-show를 사용할 수 없는 이유는 무엇인가요? 🎜🎜🎜🎜🎜vue 계산 속성에 대한 자세한 설명🎜🎜🎜🎜

위 내용은 storejs에서 얻은 데이터를 처리하는 vue 단계에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.