0

我试图在 Reactjs 中实现机车滚动窗帘的平滑滚动。但是他还是不行……

我收到错误:

react_curtains__WEBPACK_IMPORTED_MODULE_2__.Curtains.disableDrawing 不是函数

或者

react_curtains__WEBPACK_IMPORTED_MODULE_2__.Curtains.updateScrollValues 不是函数

应用程序.js

import React, {useRef, useEffect, useState} from 'react';
import Home from './Pages/Home';
import {Curtains} from 'react-curtains'
import locomotiveScroll from 'locomotive-scroll';

function App() {

  const [useNativeScroll, setUseNativeScroll] = useState(null)

  const updateScroll = (xOffset, yOffset) => {
    // update our scroll manager values
    Curtains.updateScrollValues(xOffset, yOffset);
  }

  let container = useRef(null);
  useEffect(() => {
    
    const smoothScroll = new locomotiveScroll({
        el: container,
        smooth: true,
        inertia: 0.5,
        passive: true,
    });

    setUseNativeScroll(smoothScroll.isMobile)
    console.log(Curtains);

    if(!useNativeScroll) {
      // we'll render only while lerping the scroll
      console.log(Curtains.disableDrawing);
      Curtains.disableDrawing();
      smoothScroll.on('scroll', (obj) => {
          updateScroll(obj.scroll.x, obj.scroll.y);
  
          // render scene
          Curtains.needRender();
      });
    }

  }, []);

  return (
    <Curtains  watchScroll={useNativeScroll}  pixelRatio={Math.min(1.5, window.devicePixelRatio)}>
      <div ref={el => container = el} className="App">
        <Home />
      </div>
    </Curtains>
  );
}

export default App;

我使用这个仓库:https ://github.com/martinlaxenaire/curtainsjs/blob/master/examples/multiple-planes-scroll-effect-custom-scroll/js/multiple.planes.parallax.setup.js

如果我希望画布与页面的其余部分一起移动,我必须解决这个问题

4

0 回答 0