Javascript framework7页面初始化事件未触发

Javascript framework7页面初始化事件未触发,javascript,cordova,phonegap,html-framework-7,Javascript,Cordova,Phonegap,Html Framework 7,我正在尝试使用framework7,无法触发page init事件。我使用的代码非常简单,并且我已经非常仔细地遵循了。无论我做什么,它都不会触发(控制台上没有任何记录,也没有错误) 我创建了一个 我还尝试了回调myApp.onPageInit。娜达 非常感谢您的帮助 JS代码 var myApp = new Framework7({}); var $ = Dom7; var mainView = myApp.addView('.view-main', { dynamicNavbar: t

我正在尝试使用framework7,无法触发page init事件。我使用的代码非常简单,并且我已经非常仔细地遵循了。无论我做什么,它都不会触发(控制台上没有任何记录,也没有错误)

我创建了一个

我还尝试了回调
myApp.onPageInit
。娜达

非常感谢您的帮助

JS代码

var myApp = new Framework7({});
var $ = Dom7;
var mainView = myApp.addView('.view-main', {
    dynamicNavbar: true
});
$(document).on('page:init', function (e) {
    alert("processing page init");
});
HTML

<div class="views">
  <div class="view view-main navbar-through toolbar-through">
    <div class="navbar">
      <div class="navbar-inner">
        <div class="center">Framework7</div>        
      </div>
    </div>
    <div class="toolbar">
      <div class="toolbar-inner">
        <a href="#" class="link">Left</a>
        <a href="#" class="link">Right</a>
      </div>
    </div>
    <div class="pages">
      <div class="page" data-page="home">
        <div class="page-content">
          <div class="content-block">
            <p>Hi there!</p>            
          </div>
        </div>
      </div>
    </div>
  </div>
</div>

框架7
你好

可以通过以下方式解决此问题(有时在加载的第一个文件中包含内容时不会触发事件)


或者尝试触发您的主页回调(第三个链接点)

@SuperDuperApps,我成功地运行了代码。很像Djiggy建议的那样,如果你延迟初始化,它对我有效(如下)。但是,如果您不希望在第一个页面上调用它,并且只在随后的页面上调用它,那么您拥有的代码可以工作。只要尝试添加一个类似于文档中的链接(到about.html),它就可以工作了

var myApp = new Framework7({
    init: false
});
var $ = Dom7;
var mainView = myApp.addView('.view-main', {
    dynamicNavbar: true
});
$(document).on('page:init', function (e) {
    alert("processing page init");
});
myApp.init()

注意:PageInit不会在后面调用。

从第3版开始,它已更改。现在,可以通过这样做来实现:

var myApp = new Framework7({
    ...
    init: false
});

myApp.on('init', function(e) {
    alert('app init event fired');
});

myApp.init();

下页有详细信息

我这样使用它:在app.js中

var app = new Framework7({
    id: 'io.framework7.testapp',
    root: '#app',
    ...
    on: {
        pageInit: function (e, page) {
            console.log('page init -> route.name=' + e.route.name);

            if(e.route.name === "searchPage") {
                app.methods.searchPageInitMethod(e);
            }
        },
    },
    methods: {
        searchPageInitMethod: function (e) {
            console.log("Page Route Params:" + app.views.main.router.currentRoute.params)
        },
    },
    ...
}
我的路由表(routes.js)如下所示:

var routes = [
    ...
    {
        name: "searchPage",
        path: '/search/:keyword/',
        url: './pages/page-search.html',
    },
    ...
];

谢谢你提供的额外信息,很高兴能解决这个问题。