在ons-sliding-menu中传递参数

Passing parameters in ons-sliding-menu

我想知道是否可以在 ons-sliding-menu 中打开一个 ons-page 作为主页面并传递一些参数。

myMenu.setMainPage('somePage.html', [parameter1:'whatever'])

然后,进入页面后,恢复它们。

我知道这可以在 ons-navigator 组件中完成。我没有找到关于这个问题的任何信息。

万一这个机制不能用于滑动菜单,谁能给我推荐一个合适的?

我正在考虑将我需要的参数绑定到 $rootScope:

$rootScope.parameter1 = 'whatever'

这是正确的吗?还有更好的选择吗?

感谢您的帮助。

只要您设置的变量属于新页面的父级范围,您就不需要使用根范围。

所以在你的控制器中你可以做类似

的事情
$scope.params = {};

并且在 ngClick 指令中:

params.parameter1 = something; myMenu.setMainPage('somePage.html');

我在Codepen上做了一个简单的例子:http://codepen.io/argelius/pen/GgQVRa

但是,更简洁的方法可能是创建一个简单的服务来保存参数。然后在两个控制器中注入服务。如果你这样做,你就不必污染范围。