最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

vuejs父子組件之間數(shù)據(jù)交互詳解

 更新時間:2017年08月09日 08:33:01   作者:CooMark  
這篇文章主要為大家詳細介紹了vuejs父子組件之間的數(shù)據(jù)交互,具有一定的參考價值,感興趣的小伙伴們可以參考一下

父子組件之間的數(shù)據(jù)交互遵循:

props down - 子組件通過props接受父組件的數(shù)據(jù)
events up - 父組件監(jiān)聽子組件$emit的事件來操作數(shù)據(jù)

示例

子組件的點擊事件函數(shù)中$emit自定義事件

export default {
 name: 'comment',
 props: ['issue','index'],
 data () {
 return {
  comment: '',
 }
 },
 components: {},
 methods: {
 removeComment: function(index,cindex) {
  this.$emit('removeComment', {index:index, cindex:cindex});
 },
 saveComment: function(index) {
  this.$emit('saveComment', {index: index, comment: this.comment});
  this.comment="";
 }
 },
 //hook 
 created: function () {
 //get init data

 }

}

父組件監(jiān)聽事件

復(fù)制代碼 代碼如下:
<comment v-show="issue.show_comments" :issue="issue" :index="index" @removeComment="removeComment" @saveComment="saveComment"></comment>

父組件的methods中定義了事件處理程序

 removeComment: function(data) {
  var index = data.index, cindex = data.cindex;
  var issue = this.issue_list[index];
  var comment = issue.comments[cindex];
  axios.get('comment/delete/cid/'+comment.cid)
  .then(function (resp) {
  issue.comments.splice(cindex,1);
  });
 },
 saveComment: function(data) {
  var index = data.index;
  var comment = data.comment;
  var that = this;
  var issue =that.issue_list[index];
  var data = {
  iid: issue.issue_id,
  content: comment
  };

  axios.post('comment/save/',data)
  .then(function (resp) {
  issue.comments=issue.comments||[];
  issue.comments.push({
   cid: resp.data,
   content: comment
  });
  });
  
  //clear comment input
  this.comment="";
 }

 },

注意參數(shù)的傳遞是一個對象

其實還有更多的場景需要組件間通信

官方推薦的通信方式

 以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評論

林口县| 汤原县| 和田县| 永州市| 通化县| 新建县| 莒南县| 肇州县| 大荔县| 平定县| 铁力市| 利辛县| 格尔木市| 将乐县| 临朐县| 江山市| 秦皇岛市| 宁波市| 蛟河市| 新昌县| 罗甸县| 绥阳县| 玉山县| 新民市| 阿巴嘎旗| 延川县| 固镇县| 阳城县| 青龙| 孝昌县| 墨江| 托克逊县| 娱乐| 寿宁县| 昌乐县| 宁强县| 郑州市| 遵化市| 夏河县| 皋兰县| 辽源市|