方式1:dom0級別的事件繫結
"btn"
>點我<
/button>
// dom0級別的事件繫結
let btn = document.
getelementbyid
("btn");
btn.
onclick
=function()
<
/script>
<
/body>
方式2:dom2級別的事件繫結
"btn"
>點我<
/button>
// dom0級別的事件繫結
let btn = document.
getelementbyid
("btn");
btn.
addeventlistener
("click",(
)=>
)<
/script>
<
/body>
方式3:html級別的事件繫結(方法後必須加括號)
"btn" onclick=
"fn()"
>
點我fn()
<
/button>
"btn" onclick=
"fn"
>點我fn<
/button>不加(
) 不ok
functionfn(
)<
/script>
<
/body>
處理this問題:
1)***可以變成箭頭函式,在不傳遞引數的情況下,可以這樣繫結:onclick=
2)在構建函式(constructor)中,可以使用bind,對this進行繫結,繫結:onclick= 不能傳參
3)直接在使用監聽時繫結 onclick=
class
mycom
extends
component
// bind返回乙個改變了this指向的新函式
this
._clickhandle =
this
._clickhandle.
bind
(this)}
render()
=this
.state
return
(今天天氣很
<
/h1>
>切換<
/button>
<
/div>)}
_clickhandle()
=this
.state
// 更新狀態機
this
.setstate()
}}
class
mycom
extends
component
}render()
=this
.state
return
(今天天氣很
<
/h1>
>切換<
/button>
"***" onclick=
>切換<
/a>
<
/div>)}
_clickhandle
(a,b,e)
=this
.state
// 更新狀態機
this
.setstate()
}}
react 事件處理
1.所有的事件以駝峰式命名如onclick 2.this作用域的問題,直接使用箭頭函式可以將該類的例項物件傳遞過去 若是呼叫的元件方法,需要使用this.handleclick this.handleclick.band this 這句話會建立乙個新的函式給handleclick,並把this當做引...
react事件處理
採用on 事件名的方式來繫結乙個事件,注意,這裡和原生的事件是有區別的,原生的事件全是小寫onclick,react裡的事件是駝峰onclick,react的事件並不是原生事件,而是合成事件。和普通瀏覽器一樣,事件handler會被自動傳入乙個event物件,這個物件和普通的瀏覽器event物件所包...
React元件中的事件處理函式
class reactevent extends component handleclick render click mebutton render中使用箭頭函式class reactevent extends component render click mebutton 使用class fie...