为什么在angular中不重置服务数据?
Why service data not reset in angular?
当我们在angular中从一个url路由到另一个url时,控制器数据是Rest的,但服务数据不会重置。
谁能解释一下为什么它没有重置。如有任何帮助,不胜感激。
谢谢
服务只被实例化一次,依赖于该服务的每个组件都会获得该服务的相同共享实例。服务不会被"重置"/摧毁/拆除,它们是永久的。控制器被绑定到作用域,并随作用域的变化而变化。
这实际上允许你以服务的形式拥有一个恒定的"后端",它在应用程序的整个生命周期中保持其状态,而控制器是绑定在视图上的临时东西,随着GUI的变化而出现和消失。
Angular服务是:
惰性实例化——Angular只在应用组件依赖于它。
singleton -每个组件
依赖于服务获取对单个实例的引用由服务工厂生成。
你可以在Angular的文档中了解更多:https://docs.angularjs.org/guide/services.
这个问题有点老了,但是让我分享一下我是如何删除存储在服务中的数据的。
service.ts
data: any;//I made a storage variable like this so it will be undefined value by default
removeProductData() {
this.data= undefined;
}
//In your component just call this function `removeData()` wherever you want to delete your data.
相关文章:
- AngularJS-需要在index.html页面中访问来自服务的数据
- 将工厂服务数据发送到控制器,以便在视图中使用
- 控制器切换后匿名功能中的访问服务数据发生变化
- 角度:如何刷新服务数据
- 如何访问回调函数之外的异步angularjs服务数据
- 如何将指令模型绑定到异步服务数据
- 基于KendoUI网格内的服务数据的静态下拉列表值选择
- 使用$timeout等待服务数据解析
- 在使用angularjs刷新页面时,不应删除服务数据
- 在ASP.NET MVC中使用屏蔽图绑定到web服务数据
- Angular:在控制器之间共享异步服务数据
- 如何在Mozilla Firefox中获取web服务数据
- ajax GET无法工作(服务数据无法获取)
- 将服务数据保存到控制器的全局变量中
- 为什么在angular中不重置服务数据?
- 在React.js中的组件之间传递Ajax/服务数据
- Angularjs从http url中的服务数据中筛选错误
- 如何检索web服务数据并将其放置在html表中
- AngularJS服务返回数据,但在编辑时会编辑原始服务数据
- OData服务数据绑定