Vue执行方法,方法获取data值,设置data值,方法传值操作


Posted in Javascript onAugust 05, 2020

方法写在methods中

v-on:click="run()"

@click="run()"

方法获取data中的数据通过this.数据获取

方法设置data中的数据通过this.数据=''设置

例如通过this.list=[1,2,3],设置list的值,让页面出循环list

可通过 @click="run('123')",将值传到方法中

可通过 @click="run($event)",将事件对象传到方法中,然后根据事件对象的e.srcElement设置点击标签的属性,也可以通过e.srcElement.dataset获取自定义属性

<template>
 <div id="app">
  {{msg}}
  <button @click="run()">@click事件触发</button>
  <button v-on:click="runvon()">v-on:click事件触发</button>
  <button @click="getMsg()">获取data.msg</button>
  <button v-on:click="setMsg()">设置data.msg</button>
  <ul>
   <li v-for="item in list">{{item}}</li>
  </ul>
  <button @click="setList()">设置List的值</button>
  <button @click="sendData('123')">方法传值</button>
  <button v-on:click="sendEvent($event)">传递事件对象</button>
  <button @click="sendEventSet($event)">传递事件对象,并设置背景色</button>
  <button data-a="啦啦啦" @click="sendEventData($event)">传递事件对象,并获取自定义属性</button>
 </div>
</template>

<script>
export default {
 name: 'app',
 data () {
  return {
   msg: '123',
   list:[]
  }
 },
 methods:{
  run(){
   alert("@click事件触发")
  },
  runvon(){
   alert("v-on:click事件触发")
  },
  getMsg(){
   alert("我获取到了msg"+this.msg);
  },
  setMsg(){
   this.msg="我是设置后的值"
  },
  setList(){
   for(var i = 0 ; i < 10 ; i++){
    this.list.push(i)
   }
   
  },
  sendData(a){
   alert("穿过来的值是:"+a)
  },
  sendEvent(e){
   console.log(e);
  },
  sendEventSet(e){
   e.srcElement.style.background="red";
  },
  sendEventData(e){
   alert(e.srcElement.dataset.a)
   
  }
 }
}
</script>
<style lang="scss">
</style>

补充知识:Vue 兄弟组件通过事件广播传递数据

非父子组件传值

通过事件广播实现非父子组件传值

1.新建js,引入并实例化Vue

import Vue from 'vue'
var VueEvent = new Vue();
export default VueEvent;

2.子组件A中引入VueEvent,并广播事件

import VueEvent from '../model/VueEvent.js'

VueEvent.$emit('to-news',this.msg);

3.子组件B中引入VueEvent,并监听事件

import VueEvent from '../model/VueEvent.js'

VueEvent.$on('to-news',data=>{console.log(data);});

示例代码

import Vue from 'vue'
var VueEvent = new Vue();
export default VueEvent;
<template>
<div id="home">
  <button @click="sendMsg()">我来触发事件</button>
</div>
</template>
<script>
import VueEvent from "../models/VueEvent.js";
export default {
 data() {
  return {
   msg: "我是Home的msg"
  };
 },
 methods: {
  sendMsg() {
   VueEvent.$emit("tonews", this.msg);
  }
 }
};
</script>
<style>
</style>
<template>
<div id="news">
  我来接受事件--{{msg}}
</div>
</template>
<script>
import VueEvent from "../models/VueEvent.js";
export default {
 data() {
  return {
   msg: "我是News的msg"
  };
 },
 mounted() {
  VueEvent.$on("tonews", res => {
   this.msg = res;
  });
 }
};
</script>
<style>
</style>
<template>
 <div id="app">
  <v-home></v-home>
  <hr />
  <v-news></v-news>
 </div>
</template>

<script>
import Home from "./components/Home.vue";
import News from "./components/News.vue";
export default {
 name: "app",
 data() {
  return {
   msg: "Welcome to Your Vue.js App"
  };
 },
 components: {
  "v-home": Home,
  "v-news": News
 }
};
</script>

<style lang="scss">
</style>

以上这篇Vue执行方法,方法获取data值,设置data值,方法传值操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jQuery EasyUI API 中文文档 - Calendar日历使用
Oct 19 Javascript
js 走马灯简单实例
Nov 21 Javascript
利用js实现在浏览器状态栏显示访问者在本页停留的时间
Dec 29 Javascript
jQuery焦点图切换简易插件制作过程全纪录
Aug 27 Javascript
JQuery中DOM加载与事件执行实例分析
Jun 13 Javascript
小白谈谈对JS原型链的理解
May 03 Javascript
jQuery hover事件简单实现同时绑定2个方法
Jun 07 Javascript
JS遍历对象属性的方法示例
Jan 10 Javascript
EasyUI为Numberbox添加blur事件的方法
Mar 05 Javascript
JS判断数组那点事
Oct 10 Javascript
最新Javascript程序员面试试题和解题方法
Nov 23 Javascript
select获取下拉框的值 下拉框默认选中方法
Feb 28 Javascript
vue 需求 data中的数据之间的调用操作
Aug 05 #Javascript
js实现简单选项卡制作
Aug 05 #Javascript
vue 内联样式style中的background用法说明
Aug 05 #Javascript
vue flex 布局实现div均分自动换行的示例代码
Aug 05 #Javascript
微信小程序实现上传照片代码实例解析
Aug 04 #Javascript
JavaScript实现烟花绽放动画效果
Aug 04 #Javascript
JS事件循环机制event loop宏任务微任务原理解析
Aug 04 #Javascript
You might like
基于mysql的bbs设计(一)
2006/10/09 PHP
php定时删除文件夹下文件(清理缓存文件)
2013/01/23 PHP
zend framework文件上传功能实例代码
2013/12/25 PHP
跟我学Laravel之快速入门
2014/10/15 PHP
php检查是否是ajax请求的方法
2015/04/16 PHP
PHP错误处理函数register_shutdown_function使用示例
2017/07/03 PHP
window.location和document.location的区别分析
2008/12/23 Javascript
jquery ajax abort()的使用方法
2010/10/28 Javascript
初窥JQuery(二)事件机制(2)
2010/12/06 Javascript
javascript设计模式 接口介绍
2012/07/24 Javascript
使用Java实现简单的server/client回显功能的方法介绍
2013/05/03 Javascript
js实现数组去重、判断数组以及对象中的内容是否相同
2013/11/29 Javascript
javascript实现分栏显示小技巧附图
2014/10/13 Javascript
jQuery实现渐变弹出层和弹出菜单的方法
2015/02/20 Javascript
js控制文本框输入的字符类型方法汇总
2015/06/19 Javascript
详解微信小程序Radio选中样式切换
2017/07/06 Javascript
Vue2.0 vue-source jsonp 跨域请求
2017/08/04 Javascript
JS中利用swiper实现3d翻转幻灯片实例代码
2017/08/25 Javascript
vue中axios解决跨域问题和拦截器的使用方法
2018/03/07 Javascript
JavaScript获取移动设备型号的实现代码(JS获取手机型号和系统)
2018/03/10 Javascript
Python2.x版本中maketrans()方法的使用介绍
2015/05/19 Python
使用Python的urllib2模块处理url和图片的技巧两则
2016/02/18 Python
简单实现python收发邮件功能
2018/01/05 Python
Python实现读取SQLServer数据并插入到MongoDB数据库的方法示例
2018/06/09 Python
CentOS6.9 Python环境配置(python2.7、pip、virtualenv)
2019/05/06 Python
python实现音乐播放器 python实现花框音乐盒子
2020/02/25 Python
Keras-多输入多输出实例(多任务)
2020/06/22 Python
python中turtle库的简单使用教程
2020/11/11 Python
三年大学生活自我鉴定
2014/01/21 职场文书
六月份红领巾广播稿
2014/02/03 职场文书
工程承诺书怎么写
2014/05/24 职场文书
安全环保演讲稿
2014/08/28 职场文书
公司保洁员岗位职责
2015/02/13 职场文书
2015年工商所工作总结
2015/05/21 职场文书
泰坦尼克号观后感
2015/06/04 职场文书
使用pandas生成/读取csv文件的方法实例
2021/07/09 Python