javascript - AngularJS:类型错误:无法设置未定义的属性

标签 javascript angularjs controller

可能我完全不懂Angular。我的问题是:

在用户界面上我有以下内容:

 <input ng-model="$ctrl.newItem.action" id="action" name="action" class="form-control"/> 

因此 action 元素以两种方式绑定(bind)到 Angular 模型。

现在在 UI 的其他部分,但使用相同的 Controller ,我调用编辑方法:

 $ctrl.updateItem = function (item) {
            $ctrl.newItem.action = item.action;
            //...

我希望 $ctrl.newItem.action 显示当前正在编辑的元素的操作,但我在控制台中看到错误:

TypeError: Cannot set property of undefined

为什么$ctrl.newItem.action未定义?

最佳答案

Angular 模型未定义,直到您在 Controller 中定义它或在输入中键入内容

试试这个

$ctrl.updateItem = function (item) {
            $ctrl.newItem = {action: item.action};
            //...

关于javascript - AngularJS:类型错误:无法设置未定义的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40507867/

相关文章:

angularjs - 在 AngularJS 中将指令插入 HTML 中?

Codeigniter:如何处理与 Controller /功能/参数的直接链接?

javascript - 具有 javascript 背景的 angularJS 思考

javascript - jQuery/JavaScript 循环遍历 json 数据结果

javascript - 如何调用所有者对象的函数

javascript - Angular JS 数据响应未定义

php - Laravel 将数据传递给 Controller

javascript - 拦截DOM和JS引擎调用

javascript - 在javascript中删除浏览器缓存

javascript - 将 Json 对象数组转换为 angularjs 中的属性值列表