ref原来对DO??M的操作是通过ID和getElementById方法操作的,如下:让我试试ref不需要使用getElementById直接使用ref名称对DOM进行操作,如下:import{ref}from'vue'constitemR=ref()functionuu(){console.log(itemR.value)}//直接使用ref名操作DOM让我试试ref的写法template部分通过标签的ref属性给DOM分配一个标识符可选的API操作这个标识的DOM通过$fefs对象进行引用。$refs.Identifier组合API,使用让我试试在onMounted中成功操作DOM,如下:我试试ref标识名1、字符类型标识模板部分ref赋值标识是一个字符,逻辑部分定义了同名标识,用来存放这个DOM对象,如上所有例子都是字符标识。当存在同名标识符时,逻辑部分的同名标识符只存储最后一个同名的DOM对象。如下:2。数组类型标识符只存在于v-for创建的ref中。逻辑部定义了同名的标识符,但是这个标识符是一个数组,里面存放的是v-forMultipleDOM对象创建的ref,如下:3.可以使用变量标识v-bind将ref属性绑定到一个响应变量上,逻辑部门需要定义响应变量的值,用于存储DOM对象。如下:
ref='oneRef'
ref='twoRef'我的ref值是??
注意上面的例子,wocao的值应该是oneRef和twoRef被定义为存储DOMThisrefisnotanotherreftemplatereference。虽然模板引用中的ref和响应变量ref的定义方式相同,但是这两个ref的性质是完全不同的。1、响应变量ref定义时,可以赋值“constwocao=ref('oneRef')”或者重新赋值“wocao.value=twoRef”,这才是真正的值。2、模板引用的ref的值默认为DOM对象。上面定义“constwocao=ref()”后,wocao的值为,一直用来存放DOM对象,重新赋值给它无效。引用ref1标识的DOM。在逻辑部分,通过“identifier.value”来引用DOM,所以所有的DOM操作都可以通过这个identifier.value来实现。1.通过identifier.value:"identifier.value.parentNode"操作其他DOM获取本DOM的父节点;获取第一个子节点:“identifier.value.firstChild”;获取最后一个子节点:“identitycharacter.value.lastChild”。操作其他DOM的属性和方法有很多,这里就不一一列举了。2、使用identifier.value操作这个DOM的属性来添加属性:“identifier.value.setAttribute('a','b')”,注意a和b必须用引号;取属性值:“identifier.value.Attributename”,如果要取标签的ID属性,可以这样做:identifier.value.id注意:以上方法只能取标签的默认属性值系统。如果是自定义属性,则需要使用getAttribute("自定义属性名称")方法获取属性值。如下:系统自身属性“id”的提取方式:wo.value.id自定义属性“zid”的提取方式:wo。价值。getAttribute("zid")获取不到ref的属性:比如wo.value.ref,获取不到wo的ref的值。不知有没有高手指教?请在本文下留言,非常感谢。获取这个DOM的内容:“Identifier.value.innerHTML”(会取出子的text和html代码);“Identifier.value.textContent”(只提取自身和child的文本内容)以及很多操作这个DOM的属性和方法,这里就不一一举例了。2.在模板部分使用v-html或者动态组件引用DOM。如果模板部分不能使用{{identifier}}来引用DOM,网页会显示:“[objectHTMLButtonElement]”。要在模板部分引用DOM,需要特殊方法如下:我是thetemplate