如何将选项传递到WinJS设置页面



通过选项将选项传递给常规PageControl是可以的,但是如何将选项传递给设置页面呢?

。使用SettingsFlyout的设置页面仍然有"ready: function (element, options)"事件,但是如何设置选项?导航是在应用程序激活事件中设置的,但是似乎没有机会设置选项…

        WinJS.Application.onsettings = function ( e )
         {
            e.detail.applicationcommands =
                {
                    "about": { href: "/settings/about/about.html", title: "About" },
                };
            WinJS.UI.SettingsFlyout.populateSettings( e );
        }

就像@devhammer说的,你没有导航到设置页面。事实上,它是一个SettingsFlyout,只是显示在你当前的页面上。其实不需要传递任何东西因为SettingsFlyout会访问页面的状态。您可以在主页中定义一个变量,然后在设置页面中访问它。如果你有应用级数据,你可以把一些状态附加到app对象上。我所做的是将默认情况下default.js中的var app = WinJS.Application行移动到全局范围内,这样我就可以从任何地方访问它,然后我从需要的地方使用它。顺便说一下,不要听信那些告诉你全局作用域是邪恶的人。只要你知道你在全局作用域中放了什么以及为什么,使用。

是可以的。

考虑到您没有使用正常的WinJS.Navigation.navigate方法导航到页面,我不确定您是否可以为您希望添加的设置页面传递标题和URI之外的任何状态。

因此,设置页面上的options参数将始终是未定义的。

最新更新