美文网首页
barbajs-Views

barbajs-Views

作者: 这是我用来记录技术的一个博客 | 来源:发表于2017-12-19 18:22 被阅读14次

    pushstate导航最困难的事情之一是处理和照顾不同页面中的所有Javascript状态/事件。
    Barba.js提供了一个很好的帮手,可以帮助你将一个Container与一个View关联起来。
    所有的transitions都需要扩展Barba.BaseView对象。
    要将一个View与一个Container关联起来,一个公共名称空间就足够了:

    <div class="barba-container" data-namespace="homepage">
    var Homepage = Barba.BaseView.extend({
      namespace: 'homepage',
      onEnter: function() {
          // The new Container is ready and attached to the DOM.
      },
      onEnterCompleted: function() {
          // The Transition has just finished.
      },
      onLeave: function() {
          // A new Transition toward a new page has just started.
      },
      onLeaveCompleted: function() {
          // The Container has just been removed from the DOM.
      }
    });
    
    // Don't forget to init the view!
    Homepage.init();
    

    在调用Pjax.start()之前,建议先调用 Views的.init() - 通过这种方式,Pjax.start()将为当前view发出onEnter()和onEnterCompleted()。
    如果您不喜欢data-namespace,您可以更改它,请参阅Dom API部分

    相关文章

      网友评论

          本文标题:barbajs-Views

          本文链接:https://www.haomeiwen.com/subject/ouliwxtx.html