在ons-sliding-menu中传递参数

时间:2015-02-16 20:15:21

标签: angularjs onsen-ui

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

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

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

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

如果此机制无法用于滑动菜单,是否有人可以向我推荐合适的菜单?

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

$rootScope.parameter1 = 'whatever'

这是对的吗?有更好的选择吗?

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

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

因此,在您的控制器中,您可以执行类似

的操作
$scope.params = {};

ngClick指令中:

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

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

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