问题标签 [angular-akita]
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.
angular - 使用 akita-ng-fire 时如何避免“this.fireAuth.auth.createUserWithEmailAndPassword 不是函数”
我刚刚按照大部分 akita-ng-fire 示例 + doc 在我的 ionic 项目中设置身份验证。
我已经安装了@angular/fire(6.0.2)、akita-ng-fire(1.5.13)、firebase(7.19.1)、angular lib(10.0.0)、ionic libs(5.0.0)。
这是我的模型:
这是我的查询:
这是我的商店:
这是我的服务:
我已经在我的 app.module 中设置了环境的 firebase + 初始化的 firebase。
但是,在我的应用程序中,我正在尝试调用该服务:
我在 chrome 开发工具中收到此错误:
我能错过什么?如何初始化身份验证?我到处找,但我找不到我错过的东西。
我this.authService
在调用它之前已经抛弃了它,我正在寻找一个fireAuth
属性,但下面没有身份验证。是否存在某种不兼容?
angular - 从秋田商店查询时,Angular 10 未检测到更改
我很可能错误地设置了我的秋田商店,但我非常密切地关注了文档。
我正在设置一些routerLink
s 以从商店动态填充(应用程序行为取决于用户导航时更新路线)
在返回应用程序状态的订阅中,我从中派生新路由,如果我将返回的对象分配给我的组件参数,我会感到害怕ExpressionChangedAfterItHasBeenCheckedError
奇怪的是,如果我改为在订阅中为该属性分配一个静态对象,我不会收到错误消息(但值是静态的,不是我需要的)
我能够使用它,.detectChanges()
但我的印象是 Akita 为我们处理更改检测,所以我非常困惑(并且不想每次我子到商店查询时都必须手动检测更改)
有效的代码(在导航栏中):
设置状态的代码(在可导航组件之一中):
查询.ts:
商店.ts:
服务.ts:
angular - 使用秋田状态库向嵌套数组添加对象 - Angular 9
我的秋田商店中有下一个实体结构:
我正在尝试将另一个对象添加到特定值的数据数组中,例如我想添加{dataId: 1.5, text: 'dfg}
到值的数据中valueId: 1.1
。所以结果应该是这样的:
我试图做下一件事,但没有奏效:
任何帮助,将不胜感激
angular - Angular 使用 Akita 商店 ngOnInit 在首次加载时不起作用
我的 Angular10 应用程序使用 Akita 商店时遇到问题。
当我在我的组件页面上启动/刷新我的应用程序时,我在我的组件上看到 LOADING。
但是,通过控制台,看起来商店已经加载了项目,并且我的 console.logs 在 onInit 中被触发。
当我在他们应该加载的页面上刷新应用程序时,它不会,它只会显示“正在加载”。但是,如果我单击此页面的路由器链接按钮,它将加载。
/models/post post.model.ts
/stores/post post.store.ts
/stores/user user.query.ts
服务/帖子posts.service.ts
视觉/视觉.component.ts
视觉/视觉.component.html
javascript - 使用 Akita/State 管理从 Angular Material 表中的详细信息页面导航回来后保持搜索页面的状态
我正在寻找任何可以在单击详细信息页面并返回使用 location.back() 函数后保存搜索过滤器状态、分页状态的工作示例。
我在我的应用程序中使用秋田商店和角度材料表来维护状态。
我正在浏览其中一个 AkitaFilter 插件,但它们缺少文档和示例。任何人都可以使用任何 NGRX 或秋田州管理来将状态保存在角度材料表中吗?
angular - 我应该如何使用秋田商店构建我的 Angular 服务?
我正在使用 Akita 实体数据存储在 Angular 应用程序的前端缓存数据。
在我的服务中,我有一些类似这样的功能:
现在,可以理解的是,当实体在商店中更新时,Akita 商店会触发大量事件(属性被设置,保存后更新)。
我觉得我想在保存后更新商店,以防服务器端逻辑对实体产生副作用(在这种情况下确实会发生)。
像这样保持 FE/BE 同步的秋田方式是什么?
我想我可以从商店中获取实体,为其设置值,然后调用 save 函数,但这似乎与 Akita 使用 store.update() 更新对象属性的方式相反。
当 Akita 从它的 getEntity() 函数中重新调整不可变对象时,我最终得到了一些感觉不对的东西(assign(),不使用 akita 内置 store.update())......
angular - 重写嵌套订阅
我的原始代码很难调试和维护,所以我正在重写我的代码。
原始代码
所以基本上,我调用了几个 API,API 的参数基于之前的 API 结果,除了最后一个 API 调用。最后一个 API 调用是关于按特定顺序组织用户。
重写代码
我在实现原始嵌套订阅的最后一点时遇到了麻烦。重写的代码是正确的方法吗?我应该如何编写剩余部分以及我应该使用哪个 RxJS 运算符?
angular - 如何使用条件动态添加 rxjs 管道运算符?
我正在尝试将 2 个管道运算符插入到管道函数中,但我想按条件应用第一个,否则,只会应用第二个。
这就是它现在没有条件的样子:
getData(query).pipe(setLoding(this.store),tap(//some actions here...))
setLoading是一个秋田管道,我希望它可以应用一些布尔条件。
我尝试使用 rxjs iif()
,但收到一个错误,因为setLoding
它不是SubscribableOrPromise
.
谁能想到另一种方式?
rxjs - Akita 和 Rxjs 的 Angular 在外部 observable 内部存在 foreach 问题
我是秋田的 Angular 新手。
我有一个应用程序,用户在其中加载并设置在商店中。所有用户都有一个初始 imageUrl 属性设置为例如:'http://testxxxxxx' 该组件查询所有用户的商店,并通过管道调用一个循环遍历每个人的方法,进行 api 调用以获取“blob”图像响应从 api,并使用人员的 imageUrl = 'blob:http:2fk2fjadkf' 和组件设置 <img src='imageUrl' 更新商店。
但是由于某种原因,外部 observable 内部的方法循环了很多次。不知道为什么。
这是我的代码:
零件:
Component.html 使用 peopleToShow$ 和每个人的 imageUrl 属性。现在它没有采用在 this.loadImagesAsBlobs 中设置的更新的 blob url
正面:
谢谢
angular - Angular:akitaConfig 的放置位置
我已经尝试akitaConfig
直接放置在我的文件的构造函数中app.component.ts
,它在其他任何东西之前被调用,但它似乎没有正确配置之后创建的数据存储。我正在尝试设置resettable
为true
全局。我发现这样做的唯一方法是将其设置在每个单独的商店中,这并不理想。
TIA。