Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angular/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular 与创建一个可以全局访问的类相比,Redux有什么优势?_Angular_Redux - Fatal编程技术网

Angular 与创建一个可以全局访问的类相比,Redux有什么优势?

Angular 与创建一个可以全局访问的类相比,Redux有什么优势?,angular,redux,Angular,Redux,所以我正在阅读Redux模式,虽然我知道它是如何工作的,但我不确定它的确切用途 我为什么不创建一个全球范围的服务类,每个类都可以设置和访问它呢 @Injectable() export class SettingsService { constructor() { } public MyVariable: number = 20; } <p> <label class="label">Adjust my variable</label&g

所以我正在阅读Redux模式,虽然我知道它是如何工作的,但我不确定它的确切用途

我为什么不创建一个全球范围的服务类,每个类都可以设置和访问它呢

@Injectable()
export class SettingsService {

  constructor() { }

  public MyVariable: number = 20;

}


 <p>
    <label class="label">Adjust my variable</label>
    <input class="slider" type="range" max="150" min="1" [(ngModel)]="settingService.RouteLength" /> {{settingService.MyVariable}}
    </p>
<p>
@Injectable()
导出类设置服务{
构造函数(){}
公共MyVariable:number=20;
}

调整我的变量
{{settingService.MyVariable}}


与每个人都可以访问的类相比,实现redux模式还有什么额外的好处?

redux不仅仅是存储数据的中心位置。这是单向的数据流。 更多信息请点击此处:

我会解释我的经历。我也相信这一点,在我的服务中使用了
BehaviorSubject
,并实现了代码。这是非常乏味和混乱的

我使用的
@ngrx/store
redux
类似。它给了我这些优势:

  • 预定义语法:语法清晰、严格。不需要重新发明轮子,我立刻停止了对建筑的思考 并直接使用我的应用程序逻辑

  • 松散耦合的代码:这对我来说是生活的改变者。在我们队 我们可以在不同的开发人员之间共享任务,每个人都可以 完成他们的部分而不依赖于其他开发人员。 单元测试也是独立的。我们可以写服务,减速机, 效果,组件+HTML代码独立。这就像一个奇迹

  • Redux开发工具:使用Redux开发工具,我们可以来回查看、检查数据状态等,让生活变得更轻松。我们也可以 使用它来演示UI。我通常会回到美国,向大家展示 加载页面的样子,错误页面的样子等等

  • 不可变数据:因为数据只在还原器上更新,所以调试代码很容易。相信我,即使是初级开发人员(有几个月的经验),我们也没有任何bug。这很直截了当

  • 这看起来是一个简单的想法,但在开发经验上却产生了巨大的差异


    唯一的缺点是语法冗长,但看到一切都完美运行感觉很好

    Redux不仅仅是存储数据的中心位置。这是单向的数据流。 更多信息请点击此处:

    我会解释我的经历。我也相信这一点,在我的服务中使用了
    BehaviorSubject
    ,并实现了代码。这是非常乏味和混乱的

    我使用的
    @ngrx/store
    redux
    类似。它给了我这些优势:

  • 预定义语法:语法清晰、严格。不需要重新发明轮子,我立刻停止了对建筑的思考 并直接使用我的应用程序逻辑

  • 松散耦合的代码:这对我来说是生活的改变者。在我们队 我们可以在不同的开发人员之间共享任务,每个人都可以 完成他们的部分而不依赖于其他开发人员。 单元测试也是独立的。我们可以写服务,减速机, 效果,组件+HTML代码独立。这就像一个奇迹

  • Redux开发工具:使用Redux开发工具,我们可以来回查看、检查数据状态等,让生活变得更轻松。我们也可以 使用它来演示UI。我通常会回到美国,向大家展示 加载页面的样子,错误页面的样子等等

  • 不可变数据:因为数据只在还原器上更新,所以调试代码很容易。相信我,即使是初级开发人员(有几个月的经验),我们也没有任何bug。这很直截了当

  • 这看起来是一个简单的想法,但在开发经验上却产生了巨大的差异

    唯一的缺点是语法冗长,但看到一切都完美运行感觉很好