加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

angularjs – 错误:不可分配的模型表达式:undefined(指令:chi

发布时间:2020-12-17 07:48:04 所属栏目:安全 来源:网络整理
导读:作为后续行动仍然关于这个洞穴: plunker 如果我在小孩1中选择一个项目时查看Chrome中的控制台,我会收到以下错误: 错误:不可分配的模型表达式:undefined(指令:childOne) 指令元素是一个元素,而不是一个属性,并且在指令本身中被指定,所以我完全感到困惑.
作为后续行动仍然关于这个洞穴:

plunker

如果我在小孩1中选择一个项目时查看Chrome中的控制台,我会收到以下错误:

错误:不可分配的模型表达式:undefined(指令:childOne)

指令元素是一个元素,而不是一个属性,并且在指令本身中被指定,所以我完全感到困惑.

TL; DR; – 问题是属性是snake-case,范围定义将它们转换为camelCase.

你有:

app.directive('childOne',function () {
    return {
        restrict: "E",replace: true,scope: {
            labelName: "@",selectPhrase: "@",ngModel: "=",options: "=",},template: '<span><div class="local-label">{{labelName}}: </div><div style="width:15px;display:inline-block;"></div>' +
                  '<span style="display: inline-block;"><select ng-model="ngModel" ng-options="o.Id as o.Name for o in options | orderBy:'Name'" class="formRequire" required><option value="" selected="selected">{{selectPhrase}} ...</option></select>' +
                  '</span></div></span>'
    };
})

问题是你绑定ngModel,但是child-one元素没有为它提供一个值.如果我评论该部分,它似乎工作正常.

似乎当你在范围中有“=”绑定意味着强制性时,在JavaScript世界中定义时,属性也会从snake-case转换为camelCase

PS:这是真的,错误有点模糊

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读