AngularJs,如何将值从一个页面传递到另一个页面?
基本上,我只需要在单击链接时将一个id值从一个页面传递到另一个页面。是否有我可以遵循的示例?使用服务或工厂。下面,我创建了AngularJs,如何将值从一个页面传递到另一个页面?,angularjs,Angularjs,基本上,我只需要在单击链接时将一个id值从一个页面传递到另一个页面。是否有我可以遵循的示例?使用服务或工厂。下面,我创建了myfactory,它公开了setSomething和getSomething方法。由于工厂和服务是单例的,这些值将在应用程序的整个生命周期内保持不变(除非您手动更改它们)。因此,当controller1执行myfactory.setSomething('hi')时,任何调用myfactory.getSomething()的操作都将获得hi,直到其他操作执行myfactory
myfactory
,它公开了setSomething
和getSomething
方法。由于工厂和服务是单例的,这些值将在应用程序的整个生命周期内保持不变(除非您手动更改它们)。因此,当controller1
执行myfactory.setSomething('hi')
时,任何调用myfactory.getSomething()
的操作都将获得hi,直到其他操作执行myfactory.setSomething('other')代码>
将值从一页传递到另一页是什么意思?你是说在同一个单页应用程序中从一条路线到另一条路线?看看从一个.html文件到另一个.html文件。有许多方法可以将值从一个页面传递到另一个页面,您可以尝试URL参数、cookie和本地存储。做一些研究,尝试一下,如果你仍然不能完成它,但有一些代码可以从那里工作,StackOverflow可能可以帮助你。我只能保存该页面上的值。当我链接到另一个html时,工厂中存储的值是空的,我什么也得不到。@YunfengZhao,我明白了。我以为你在暗示这是一个有角度的单页应用程序。正如评论中提到的,有很多方法可以做到这一点,其中之一就是localStorage
。您可以像localStorage.setItem('myKey',myValue')那样使用它然后在任何需要该值的页面上可以执行如下操作:var something=localStorage.getItem('myKey')代码>
angular
.module('app', [])
.controller('controller1', controller1)
.controller('controller2', controller2)
.factory('myfactory', myfactory);
function controller1(myfactory) {
myfactory.setSomething('hi');
}
function controller2(myfactory) {
var vm = this;
vm.something = myfactory.getSomething(); // hi
}
function myfactory() {
var something;
var setSomething = function(something) {
this.something = something;
}
var getSomething = function() {
return something;
}
return {
setSomething: setSomething,
getSomething: getSomething
}
}