Angularjs传递参数以便隐藏它们

时间:2015-07-24 16:03:50

标签: angularjs

我想知道在视图之间传递参数(例如产品ID)的最佳(最安全)方式是什么,以便用户无法在网址栏中看到它们。

谢谢。 斯蒂芬

3 个答案:

答案 0 :(得分:1)

将它们存储在共享服务中,并在需要时使用它们,快速示例:

app.factory("shared", function() {
    var data = null;
    return {
        setData: function(someData) {
            data = someData;
        },
        getData: function() {
            return data;
        }
    }
});

现在使用它!

app.controller("myCtrl", function($scope, shared) {
    $scope.data = shared.getData();
});

答案 1 :(得分:1)

您应该在新视图中将它们从一个控制器传递到另一个控制器。关于如何做到这一点,这是一个非常好的答案:LINK

答案 2 :(得分:0)

执行此操作的好方法是使用Angular Service模式。 因为控制器是功能而服务是对象(单例)您可以根据应用程序中的不同功能来提供倍数服务。

您应该在此处查看Angular提供程序的文档: https://docs.angularjs.org/guide/providers