问题标签 [angular13]
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.
mongodb - 无法在 MEAN Stack 中删除 - Angular 13 - 'string | 类型的参数 undefined' 不能分配给“string”类型的参数
我正在尝试从集合中删除员工,但它抛出了这个错误
错误
错误:src/app/components/employee/employee.component.html:72:68 - 错误 TS2345:类型为“字符串”的参数 | undefined' 不能分配给'string' 类型的参数。类型“未定义”不可分配给类型“字符串”。
72 <button class="btn btn-danger" (click)="deleteEmployee(employee._id)">
员工模型.ts
员工组件.ts
员工.component.html
员工服务.ts
服务器端 - employees.controller.js
员工.js
angular - ngx-translate:检测语言变化的事件(Angular)
我想使用ngx-translate库检测“当前语言”的切换。
我可以使用哪个 js 事件来实现这一点?
为了更好地理解我的意思,请检查这个简单的例子:https ://stackblitz.com/edit/github-yvbmgu
我想从 ngOnInit() 上的“diff”组件中检测 currentLang 的变化。
angular - 角度升级降低了 devkit 版本
最近按照https://update.angular.com上的指南将 Angular 从版本升级12
到13
执行此命令后,@angular-devkit/build-angular
包显示的版本^0.1101.2
与^13.1.2
.
而 npm 中的最新版本是13.1.2
.
我应该安装最新版本还是保持原样。
angular - 从 V8 到 V13 的 Angular 更新
我正在尝试使用 Angular 版本 8 将我的应用程序更新到最新的即 v13。我已经从 Angular 网站https://update.angular.io/阅读了所有必需的文档/程序,并开始升级版本。
按照指示,我已经按照上一个更高版本逐步升级了中间版本。例如,同样是 8-9-10。现在我在本地服务服务器上面临一个主要问题,即 ng serve 命令。其余的依赖和插件版本都是固定的,都是按照最新版本更新的。
当前环境:节点 17,Angular CLI 13
我有一个共享模块,其中包含与其他模块常用的插件相关的所有模块,因此我将此模块用作共享模块。因此这个共享模块被导入到其他模块中。
我在这里想念什么?
angular - 角路由器出口和通配符问题
工作代码示例
现在,如果我尝试将出口添加到通配符,与之前的数组索引相同,它不起作用,所有加载的组件都需要通配符。
我可能在这里遗漏了一个逻辑。
在第一个示例中,如果我使用两个路由器插座,其中一个没有命名,但这不是我的目标
目标是最终使用
代替
unit-testing - Angular 中的单元测试动态组件
我正在开发一个应该生成查询构建器表单的项目。主要组件是 SearchComponent,动态添加的组件是 SearchParameterComponent。我正在尝试为该组件编写单元测试。我附上了下面的代码。
search.component.spec.ts
所以有一个 id 为“add-button”的按钮,当它被点击时,一个新的 SearchParameterComponent 被动态添加。代码的编写方式是,如果有 n 次点击,将生成 n 个 id 为 2 到 n+1 的组件。
算法
当我运行测试时,出现以下错误
SyntaxError:无法在“元素”上执行“querySelector”:“#2”不是有效的选择器。
我知道这个问题可能有点难以理解,但如果有人能解决它,那将非常有帮助
我反应迅速,会很快提供您需要的任何其他代码
angular - 未找到模块:错误:无法解析“C:\Users\monke\Documents\Epicon\esb-ui\node_modules\reflect-metadata”中的“crypto”
我在 Angular 13 上,我正在尝试使用反射元数据包,但我得到奇怪的模块未找到错误:无法解析 '*\node_modules\reflect-metadata' 中的 'Crypto'。我已经尝试了堆栈溢出中列出的所有解决方案,但它对我不起作用。
我得到的实际错误 ./node_modules/reflect-metadata/Reflect.js:840:35-52 - 错误:找不到模块:错误:无法解析 'C:\Users\monke\Documents\Epicon\ 中的 'crypto' esb-ui\node_modules\reflect-元数据'
重大变化:webpack < 5 用于默认包含 node.js 核心模块的 polyfill。这已不再是这种情况。验证你是否需要这个模块并为它配置一个 polyfill。
如果你想包含一个 polyfill,你需要: - 添加一个后备 'resolve.fallback: { "crypto": require.resolve("crypto-browserify") }' - 安装 'crypto-browserify' 如果你不想要包含一个 polyfill,你可以使用这样的空模块:resolve.fallback: { "crypto": false }
这是我的包 JSON 依赖项。
typescript - 使用 ifdef-loader 和 Angular 13 和 Webpack 进行条件编译?
我有一个 Ionic 应用程序,它严重依赖条件编译,我根据一组类似于 m4 的工作方式的配置值包含或排除代码块。
为此,我一直在成功使用https://github.com/nippur72/ifdef-loader 。
我现在面临着将此应用程序从 Angular 10 升级到 13(Ionic 5 到 6)。
ifdef-loader 不适用于 Angular 10,但 @angular-dev-kit 的补丁(https://gist.github.com/tristanidoux/892469f2c345bd6c6551eb19c705a016)允许它运行。
此补丁不适用于 Angular 13,因为所有文件都已更改并尽可能多地爬取源代码我还没有看到如何为 Angular 13 创建类似的补丁。
我有以下以 ifdef-loader 文档为模型的 custom.webpack.config.js 文件:
不幸的是,这不起作用,因为 ifdef-loader 似乎没有被调用。
所以三个问题:
我在我的配置中犯了一些明显的错误吗?
有没有人让 ifdef-loader 与 Angular 13 一起工作?如果是这样,怎么做?
或者,是否有其他解决方案可以在 Angular 13 项目中有条件地包含/排除代码块?
任何指针或建议将不胜感激。
angular - Angular 13 服务定义结构
从字面上看,Angular13 非常新。我们的应用程序在启动时需要一些配置数据,因此在 AppComponent 上调用共享服务,其数据将围绕应用程序页眉、菜单和页脚共享,以显示/隐藏一些 div。下面是 SharedService 的示例代码。 共享服务.ts