2017-02-16 14 views
5

Tôi đang viết một ứng dụng được tạo với create-react-app với redux, react-reduxreact-router. Bất cứ khi nào tôi nhấp vào một Link như thế này:Vi phạm 'requestIdleCallbackHandler' mất ms

import React from 'react' 
import { Link } from 'react-router' 
import ThingCard from '../../components/ThingCard' 


const ThingsList = ({things}) => { 
    return (
     <ul> 
      {things.map(thing => 
       <Link to={"/things/"+thing.id} key={thing.id}><ThingCard thing={thing}/></Link> 
      )} 
     </ul> 
    ) 
} 

export default ThingsList 

Tôi thấy các cảnh báo sau đây trong bảng điều khiển của mình. Tôi không biết họ đến từ đâu hay ý của họ là gì. Tìm kiếm của Google không mang lại bất kỳ kết quả hữu ích nào. Những cảnh báo này có thể được bỏ qua một cách an toàn, nếu không làm thế nào tôi có thể tìm hiểu thêm về chúng? Tôi tin rằng vấn đề này đang ngăn trang mẹ hiển thị đó là con cái.

enter image description here

Tôi đã vô hiệu hóa tất cả yêu cầu mạng.

CHỈNH SỬA: Lỗi này chỉ hiển thị trong Chrome Canary chứ không phải Google Chrome. Tuy nhiên, Google Chrome không hiển thị chính xác cho trẻ em (có thể do sự cố này)

+1

Tôi cũng thấy tính năng này trong Chrome ổn định. Ứng dụng phản ứng được thực hiện với CRA vào khoảng tháng 1 năm 2017 và bị đẩy ra. Vì vậy, không theo dõi bất cứ điều gì CRA đã trở thành. Chỉ nơi tôi thấy nó được sử dụng là phụ thuộc 'node_modules/coniuse-db/{data.json, các tính năng-json/{requestidlecallback.json, dữ liệu-1.0.json, dữ liệu-2.0.json}}'. –

Trả lời

0

Có thể bỏ qua một cách an toàn. Dưới đây là good explanation tại sao bạn thấy điều này. Lý do bạn thấy requestIdleCallback ở đây có thể là do bạn đang sử dụng React 16+ có kiến ​​trúc hoàn toàn mới Sợi You can read more about it

TL; DR; Nó chỉ thông báo cho bạn rằng một số mã của bạn/của bạn mất nhiều hơn 16ms, do đó bạn có thể không phải lúc nào cũng nhận được 60fp.