一、定义属性:

  一般定义属性都是为了动态的去获取属性的值,或者动态的设置属性的值,如果想仅仅是设置一个普通的属性,直接在便签上设置属性即可,就像使用html的title、name等属性一样,如<h1  myProp ='it is my value'  >H1标签</h1>。

  下面具体说动态绑定自定义属性:

  在元素标签上通过v-bind:propName = ‘valueInData’   解释:propName 是自己指定的属性名,valueInData是定义在Vue实例的data中的属性名。v-bind的指令也可以使用半角的冒号代替。

  

二、获取属性:

  三种方法:

    1. 通用方法:

      在添加了自定义属性 的元素上,绑定点击事件(你也可以换成其他的事件,比如mouseEnter等等,此处以点击事件为例),在绑定的事件处理函数中接受一个参数(通常是event,e等等,你也可以自定义,此处以event参数为例),通过:event.currentTarget.getAttribute('propName ');就可以获取到,此处用currentTarget是指你点击的元素的外层包裹的元素,如果换成target,就指的是你实际点击的元素,建议使用currentTarget,因为如果你的自定义属性的元素内层含有子元素,使用target获取到的是子元素,获取的属性自然也是null,如果想了解target与currenTarget更多区别,请猛戳这里:https://juejin.im/post/59f16ffaf265da43085d4108

    2. 函数传参的形式:    

      <div id='app'>
       <button @click='handleSubmit(e,300)'>提交</button>
      </div>

     

      methods:{
      handleSubmit(a,b){
        console.log(b);        //300 
      }
     }

      

    3. 通过设置ref属性:

      原理:通过给元素设置ref属性,获取到该元素,然后再获取该元素的属性值;方便使用。

      代码: 

      <div id='app'>
        <button    ref='myTargetEle'    name='definedNAME'     @click='handleSubmit(e)'>提交</button>
      </div>
 

     methods :{

      handleSubmit(event){

        const  theEle = this . $refs . myTargetEle;     //获取到元素

        console.log(theEle . name);

      }

     }

三、绑定img标签的src属性时,图片不显示的问题:

    在生成src值的位置(注意不是在html标签上),给图片路径外层加上 require (  //图片路径   );  即可。

Vue.js自定义标签属性并获取属性,及绑定img的src属性的坑的更多相关文章

  1. Vue.js自定义指令的用法与实例

    市面上大多数关于Vue.js自定义指令的文章都在讲语法,很少讲实际的应用场景和用例,以致于即便明白了怎么写,也不知道怎么用.本文不讲语法,就讲自定义指令的用法. 自定义指令是用来操作DOM的.尽管Vu ...

  2. VUE.JS 窗口发生变化时,获取当前窗口的高度。

    VUE.JS # 窗口发生变化时,获取当前窗口的高度. mounted () { const that = this; window.onresize = () => { return (() ...

  3. 使用c#特性,给方法或类打自定义标签再反射获取

    给方法打自定义标签再反射获取 1.自定义特性类 using System; using System.Collections; using System.Collections.Generic; // ...

  4. 外部配置属性值是如何被绑定到XxxProperties类属性上的?--SpringBoot源码(五)

    注:该源码分析对应SpringBoot版本为2.1.0.RELEASE 1 前言 本篇接 SpringBoot是如何实现自动配置的?--SpringBoot源码(四) 温故而知新,我们来简单回顾一下上 ...

  5. vue.js自定义指令入门

    Vue.js 允许你注册自定义指令,实质上是让你教 Vue 一些新技巧:怎样将数据的变化映射到 DOM 的行为.你可以使用Vue.directive(id, definition)的方法传入指令id和 ...

  6. vue.js自定义指令详解

    写在文本前:相信在做vue的项目,你肯定接触了指令,我们常用vue内置的一些指令,比如v-model,v-text,v-if,v-show等等,但是这些内置指令不在本文的讲解范畴,本文想说的是其自定义 ...

  7. vue.js click点击事件获取当前元素对象

    Vue.js可以传递$event对象 <body id="app"> <ul> <li v-on:click="say('hello!', ...

  8. Vue.js教程--基础2(事件处理 表单输入绑定

    事件处理 表单输入绑定 事件处理 监听v-on 监听 DOM 事件,并在触发时运行一些 JavaScript 代码. 可以在v-on:click=''加内联语句. 有时也需要在内联语句处理器中访问原始 ...

  9. vue.js初级入门之最基础的双向绑定操作

    首先在页面引入vue.js以及其他需要用到的或者可能要用到的插件(这里我多引用了bootstrap和jquery) 引用的时候需要注意文件的路径,准备工作这样基本就完成了,下面正式开始入门. vue. ...

随机推荐

  1. 解决/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory报错 (转)

    解决/lib/ld-linux.so.2: bad ELF interpreter: No such file or directory报错 念淅 2020-01-03 15:02:25 3793 收 ...

  2. FrameworkElementFactory中的SetBinding与SetValue

    public static Microsoft.Windows.Controls.DataGridColumn CreateDateColumn(string path, string header) ...

  3. CentOS 8 Yum安装ansible

    ansible的安装 直接yum安装ansible会报错,需要先安装epel源. ansible的安装来源于epel仓库,因此在安装前需确保安装了正确的epel源. yum install -y ep ...

  4. nginx给consul集群配置负载均衡

    upstream consul { server 127.0.0.1:8501; server 127.0.0.1:8502; server 127.0.0.1:8503; } server { li ...

  5. 安卓WebSocket使用

    引入jar包: implementation "org.java-websocket:Java-WebSocket:1.4.0"implementation "org.s ...

  6. 如何实现一个FormData

    一.前言 最近项目中遇到一个问题,我们需要在cocos项目里去上传音频文件,而cocos原生环境和平时我们开发所在的浏览器环境和Node环境有很多差异,而cocos环境只提供了基础类,没有提供Form ...

  7. altium designer使用小技巧,记录

    1.在自建库文件中添加component File--open----schlib或pcblib---Tools---new component---绘制---保存. 2.编辑component 左边 ...

  8. uniapp swiper高度自适应问题

    这里的话是想做一个比较常见的左右滑动更改tab的效果,引用了uview-ui中的u-tabs-swiper组件,需要结合swiper组件来使用 先来讲下主体思路:每个tab页(swiper-item) ...

  9. 1. HttpRunner介绍及环境准备

    介绍 HttpRunner 是一款面向 HTTP(S) 协议的通用测试框架 只需编写维护一份 YAML/JSON脚本,即可实现自动化测试.性能测试.线上监控.持续集成等多种测试需求 官方文档: htt ...

  10. [Luogu P2824] [HEOI2016/TJOI2016]排序 (线段树+二分答案)

    题面 传送门:https://www.luogu.org/problemnew/show/P2824 Solution 这题极其巧妙. 首先,如果直接做m次排序,显然会T得起飞. 注意一点:我们只需要 ...