javascript - 当我使用 Angular Material 和一些自定义它的代码时,如何解决 Angular 应用程序中的 $event 问题
问题描述
我在使用 Angular Material 的 Angular 6 版本中发现了一个问题。任何人都可以帮助我修复 $event 的这个错误。
ERROR Error: Cannot assign value "$event" to template variable "nameValue". Template variables are read-only.
at _AstToIrVisitor.push../node_modules/@angular/compiler/fesm5/compiler.js._AstToIrVisitor.visitPropertyWrite (compiler.js:8719)
at PropertyWrite.push../node_modules/@angular/compiler/fesm5/compiler.js.PropertyWrite.visit (compiler.js:7589)
at convertActionBinding (compiler.js:8320)
at prepareEventListenerParameters (compiler.js:17473)
at Object.params (compiler.js:18598)
at compiler.js:18369
at Array.map (<anonymous>)
at compiler.js:18369
at compiler.js:17630
at Array.map (<anonymous>)
我没有使用任何模板变量。我直接把它放在Html中。
Unhandled Promise rejection: Cannot assign value "$event" to template variable "nameValue". Template variables are read-only. ; Zone: <root> ; Task: Promise.then ; Value: Error: Cannot assign value "$event" to template variable "nameValue". Template variables are read-only.
at _AstToIrVisitor.push../node_modules/@angular/compiler/fesm5/compiler.js._AstToIrVisitor.visitPropertyWrite (compiler.js:8719)
at PropertyWrite.push../node_modules/@angular/compiler/fesm5/compiler.js.PropertyWrite.visit (compiler.js:7589)
at convertActionBinding (compiler.js:8320)
at prepareEventListenerParameters (compiler.js:17473)
at Object.params (compiler.js:18598)
at compiler.js:18369
at Array.map (<anonymous>)
at compiler.js:18369
at compiler.js:17630
at Array.map (<anonymous>) Error: Cannot assign value "$event" to template variable "nameValue". Template variables are read-only.
at _AstToIrVisitor.push../node_modules/@angular/compiler/fesm5/compiler.js._AstToIrVisitor.visitPropertyWrite (http://localhost:4200/vendor.js:39190:27)
at PropertyWrite.push../node_modules/@angular/compiler/fesm5/compiler.js.PropertyWrite.visit (http://localhost:4200/vendor.js:38060:24)
at convertActionBinding (http://localhost:4200/vendor.js:38791:45)
at prepareEventListenerParameters (http://localhost:4200/vendor.js:47944:23)
at Object.params (http://localhost:4200/vendor.js:49069:20)
at http://localhost:4200/vendor.js:48840:90
at Array.map (<anonymous>)
at http://localhost:4200/vendor.js:48840:56
at http://localhost:4200/vendor.js:48101:83
at Array.map (<anonymous>)
对此的任何解决方案
解决方案
我在使用 Angular 9 时遇到了同样的问题。我发现我已经声明了一个变量,就像"let nameValue of values"
我[(item)]=nameValue
在模板上做了之后一样。问题是我已经分配item
了nameValue
双重绑定。删除()
解决了我的问题
推荐阅读
- go - 具有动态结构类型的 Go 函数
- javascript - 如何计算字符串中日文和拉丁文字符的数量?
- python - Python 谷歌云函数
- mariadb - 为什么 Linux 上的 MariaDB/InnoDB 读取 16KB 块中的 DB 文件?
- opencv - 如何使用 cv2.aruco.estimatePoseSingleMarkers 函数(python)估计 aruco 标记的姿势?
- token - 错误:返回错误:处理事务时出现 VM 异常:恢复 SafeERC20:低级调用失败
- python - 无法理解 Python 电报机器人作业队列
- python - Python openCV 在复杂图像上查找轮廓
- docker - 无法在清漆 6.5.1 中使用 std vmod
- postscript - 使用 postscript 'clip' 命令打印文档中的多个字段的正确技术是什么?