2017-05-06 17 views
9

Hi Im cố gắng để tạo ra một đầu vào phạm vi đó sẽ hiển thị một tooltip ngay trên ngón tay cái thanh trượtLàm thế nào để có được chiều rộng của một yếu tố phản ứng

tôi đã đi qua một số ví dụ vani JS trực tuyến và có vẻ như rằng tôi cần phải có chiều rộng của phần tử để hoàn thành điều đó.

Vì vậy, tôi đã tự hỏi làm thế nào để có được chiều rộng các phần tử?

khá nhiều tương đương với JQuery phương pháp $ (element) .width()

Trả lời

-8

Bạn có thể làm:

class MyComponent extends Component { 
    componentDidMount() { 
    console.log(this.refs.bla.offsetWidth) 
    } 

    render() { 
    <div ref="bla">some elem</div> 
    } 
} 

Có câu trả lời khác ra khỏi đó bao gồm kích thước phần tử trong phản ứng. Tôi đề nghị lần sau bạn thực hiện tìm kiếm!

+2

Tôi đã làm !! Tôi đoán tôi chỉ không tìm thấy nó ... có vẻ như cách gọi refs là không được chấp nhận mặc dù nó phải là 'lớp MyComponent mở rộng thành phần { componentDidMount() { console.log (this.rangeInput.offsetWidth) } hiển thị() {

{{this.rangeInput = input}}>some elem
} } ' –

+1

Bây giờ bạn trông ngớ ngẩn bây giờ @publicJorn – Trent

25
class MyComponent extends Component { 
     componentDidMount() { 
     console.log(this.myInput.offsetWidth) 
     } 

     render() { 
     <div ref={input => {this.myInput = input}}>some elem</div> 
     } 
    } 

Nó không hoạt động khi tôi thử vì tôi đang sử dụng các thành phần theo kiểu, cần được chuyển qua innerRef thay vì ref.

+0

điều gì về đệm ... – AlxVallejo

Các vấn đề liên quan