问题标签 [global-state]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - 为什么这个实现不被 PHP 认为与它们的接口兼容?
我有这两个接口:
这就是我想要实现的:
Event是Observable并且EventHandler是Observer,对吗?
那么为什么php认为这些实现与它们各自的接口不兼容呢?
对我所说的“兼容”的简单测试:
haskell - atomicModifyIORef 的额外结果参数的目的是什么?
的签名modifyIORef
很简单:
不幸的是,这不是线程安全的。有一个替代方案可以解决这个问题:
这两个功能之间究竟有什么区别?b
在修改IORef
可能从另一个线程读取的参数时,我应该如何使用该参数?
reactjs - 通过 props 响应全局状态
我使用如下共享的全局状态:
在AppLayout
我称之为:
假设在Dashboard
课堂上我需要更改globalState
,最好的方法是什么?
谢谢
angular - 关于如何制作影响 Angular 中所有组件的主题机制的指南?
问题:
我需要有关如何在 Angular 中编写机制以在我的应用程序中全局设置组件的“外观”的指导。请注意,我正在尝试学习@ngrx/platform,我认为这将是一个有趣的设计约束;但是,如果它没有意义,我愿意放手。
分解:
我有一个包含许多组件的应用程序正在进行中。我的应用程序中的每个组件目前都有 3 种可能的“外观(L&F)”:
- 早上(棕褐色)
- 下午(白色)
- 傍晚(暗)
请注意,可能会有基于更精细时间的颜色光谱。
这些 L&F 由当前用户的一天中的时间设置,例如,如果用户当前时间是上午 7 点,则计算的 L&F 将设置为“早上”。我在ngrx/store的 Angular 模块中跟踪这个状态SundialModule
,gnomon
它是减速器的机制和getting
状态的动作setting
:
日晷/减速器/gnomon.ts:
现在我有一个名为Angular Attribute 的指令[sundialTheme]
,它将HostBinding('class') theme = 'light'
在它所在的元素上设置 a 。
日晷/指令/theme.ts
问题:我的应用程序中的每个组件都需要有这个属性sundialTheme
;此外,每个组件都会订阅this.gnomon = store.select<any>('gnomon');
,这感觉很昂贵/笨拙。最后,顺便说一句,每个组件都需要sundialModule
在每个功能模块中注入,每个组件都需要每天每个时间的主题集:
每个模板的组件就是一个例子。
注意:sundialTheme
属性指令:
每个具有SundialModule
依赖关系的功能模块:
每个组件 styleUrls 都带有sundial-links
:
注意丑陋的 sundial-morning.scss
最后,我有其他方法提供给我:
1) 由于我使用的是 Angular CLI,我可以在全局范围内添加我的样式并让指令在主体上设置一个类。这似乎打破了任何类型的 Web 组件标准。
2)我可以在每个组件中使用工厂加载器styleUrls:[]
;我还没有弄清楚如何实施。
3)我可以遵循材料设计组件架构,将主题直接添加到感觉不太干的组件中?(不过,我还没有深入研究过)
4)我可以为每个组件制作一个自定义装饰器(可能是可行的,但我不确定如何实现)
还有其他建议吗?任何推理的最佳实践?
php - 无法从 PHP 中的父静态方法访问子静态属性
我的 PHP 代码有问题。我有三个名为
- 数据库对象
- 文件
- 用户图片
他们从父类到子类的继承树是DatabseObect->File->user_picture。在user_picture中,我有一个静态属性 $table_name,我用它来了解每个类的数据库表名,并在DatabaseObject类中有一些常见的数据库函数。我正在使用的函数的代码在这里
DatabaseObject 类的代码
文件类代码
user_picture 类的代码
从我在user_picture中调用上层函数的位置是
这段代码给了我以下错误
致命错误:未捕获错误:访问未声明的静态属性:DatabaseObject::$table_name in C:\xampp\htdocs\inventory-management\includes\database\DatabaseObject.php:52 堆栈跟踪:
0 C:\xampp\htdocs\inventory-management\includes\general\File.php(164): DatabaseObject::find_by_field('user_id', '29')
1 C:\xampp\htdocs\inventory-management\includes\user\user_picture.php(45): 文件::get_file_by_user('29')
2 C:\xampp\htdocs\inventory-management\public\admin\layouts\admin\header\Navigation.php(28): user_picture::get_image_by_user('29')
3 C:\xampp\htdocs\inventory-management\public\admin\layouts\admin\header\admin_header.php(21): require_once('C:\xampp\htdocs...')
4 C:\xampp\htdocs\inventory-management\public\admin\add_page_category.php(44): require_once('C:\xampp\htdocs...')
5 {main}在第52行的C:\xampp\htdocs\inventory-management\includes\database\DatabaseObject.php中抛出
请如果有人可以帮忙!
谢谢,
reactjs - React 和全局状态(reactn)
我目前正在使用 reactn ( https://github.com/charlesStover/reactn ) 使用 react 和管理全局状态。
我必须使用“SVG”并且将来能够制作图表。我想要创建的每个矩形,并更新 x 和 y 坐标。
我的矩形存储在全局状态 => index.js
我只需要使用当前矩形的索引设置数组矩形,而无需遍历整个数组的副本
我必须做这种练习,但要使用全局状态 https://codesandbox.io/s/0xo7y0wolv
我不知道我是否让自己理解,这对我来说还是新的。
swiftui - 全局状态变量 - SwiftUI
有没有办法在 SwiftUI 中拥有一个全局状态变量?能够让我所有的视图都订阅相同的状态会很好。有什么理由不这样做吗?
当我尝试使用@State
装饰器声明一个全局变量时,swift 编译器崩溃了(测试版软件,对吗?)。
node.js - 在 next.js 应用程序上管理用户的全局状态
我来自SPA和REST/GraphQl API 的世界。现在我正在使用Next.js库为SSR(Server Side Rendered) React App构建个人项目。
由于我在所有单页应用程序中都使用了Redux,我现在想知道当每个路由用户访问、加载新链接并刷新页面时,我应该如何管理用户状态。
我找到了一些关于会话和 cookie 的信息,但我都不熟悉这些信息。我查看了一些关于使用Redux和Next.js的在线文章,但看起来很复杂。
reactjs - ReactN 给我 undefined 然后我使用“useGlobal”并尝试获取状态
当我使用 reactn 库(管理和促进钩子)来获取我用 setGlobal 分配的初始全局状态时,它没有设置任何东西。当我试图得到它说未定义。
我以前使用过这个库,它通常只是导入的问题: import React from "reactn"; 从“reactn”导入 { setGlobal };
然后只需设置全局变量。
我期望我应该得到的值而不是 undefined undefined
reactjs - 为什么状态更新但我无法通过 React 中的钩子访问它?
我在通过钩子做出反应时无法访问我更新的全局状态。我创建了自定义钩子来摆脱减速器和任何 redux,因为我不喜欢它。一切正常,但我无法访问我的状态。
这是全局状态的设置方式
我确保将商店提供程序包装在 App 组件周围
App 组件很干净,主要用于路由
当我点击登录页面时,输入登录信息,然后单击提交,状态会更新。唯一的事情是我无法访问组件内的更新状态。
这是登录组件
这是 useAuth 钩子代码
当登录组件中 auth.isAutheticated 的值转换为 true 时,什么也不会发生。在提供者中,状态被更新,甚至在 useAuth 钩子中,我在控制台中记录当前状态及其更新。然而,尽管使用了 useEffects,但我无法在登录组件中访问它?有什么我想念的吗?