Javascript 在Android Mobile Browser上调用Window.scrollTo()会导致TypeError:找不到与提供的签名匹配的函数

Javascript 在Android Mobile Browser上调用Window.scrollTo()会导致TypeError:找不到与提供的签名匹配的函数,javascript,android,reactjs,browser,cross-browser,Javascript,Android,Reactjs,Browser,Cross Browser,我有一个React项目-我正在将一个onClick附加到标题导航链接,该链接滚动到页面上的特定元素。我正在生成React REF,并使用元素的Y位置输入窗口。scrollTo()函数调用 代码如下: class Component extends React.Component { constructor(props) { this.menuRef = React.createRef() } scrollToRef(ref, instructions,

我有一个React项目-我正在将一个
onClick
附加到标题导航链接,该链接滚动到页面上的特定元素。我正在生成React REF,并使用元素的Y位置输入
窗口。scrollTo()
函数调用

代码如下:

class Component extends React.Component {
    constructor(props) {
        this.menuRef = React.createRef()
    }

    scrollToRef(ref, instructions, event, arg2) {
        if (event) event.preventDefault()

        let pageOffSet = 200

            if (this.state.topOfPage) {
                pageOffSet = 200 
            } else if (!this.state.topOfPage) {
                pageOffSet = 150
            }

            window.scrollTo({top: (ref.current.offsetTop - pageOffSet), behavior: "smooth"})
    }

    render(){return(
     // Pseudocode...
    <button onClick={() => this.scrollToRef(this.menunRef, "contact", event)}
    <div ref={this.menuRef}/>
    )}
}
类组件扩展React.Component{
建造师(道具){
this.menuRef=React.createRef()
}
scrollToRef(参考、说明、事件、arg2){
if(event)event.preventDefault()
设pageOffSet=200
if(此.state.topOfPage){
pageOffSet=200
}否则如果(!this.state.topOfPage){
pageOffSet=150
}
scrollTo({top:(ref.current.offsetTop-pageOffSet),行为:“平滑”})
}
render(){return(
//伪代码。。。
this.scrollToRef(this.menunRef,“联系人”,事件)}
)}
}
预期行为: 窗口向下滚动到ref Y坐标,根据函数接收到的“指令”对状态变化作出反应(我省略了setState调用) 实际行为: 在大多数浏览器中工作。 在默认Android浏览器中,我得到以下错误:

Github上的组件完整代码:

工作演示:


请帮帮我,我正绞尽脑汁试图调试这个。我不知道如何调试移动浏览器,如何在移动safari或android浏览器上查看
console.log()
的输出?

这是
scrollTo
的新ish签名,它过去只接受
scrollTo(x,y)
,但现在它也可以接受对象。android浏览器一定不知道新版本。您可以使用一个补丁来修补它


如果您有Mac电脑,您可以通过桌面Safari调试iOS Safari:

谢谢您的回答。SmoothScroll polyfill确实修复了崩溃。不幸的是,我没有Mac电脑。你知道有什么方法可以调试三星浏览器吗?