• Vue.js自定义标签属性并获取属性,及绑定img的src属性的坑


    一、定义属性:

      一般定义属性都是为了动态的去获取属性的值,或者动态的设置属性的值,如果想仅仅是设置一个普通的属性,直接在便签上设置属性即可,就像使用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 (  //图片路径   );  即可。

  • 相关阅读:
    添加搜索引擎
    理解隐马尔可夫模型(转载)
    全排列合集
    COM使用简介
    KMP算法
    遗传算法(转载)
    退火算法(转载)
    非电信手机获取闪讯密码的一种实现方法
    几个时间控制函数(转载)
    图像处理的Alpha通道
  • 原文地址:https://www.cnblogs.com/yezibucunzai/p/10863159.html
Copyright © 2020-2023  润新知