javascript - ng-repeat 中的参数无效

标签 javascript angularjs

我有一个简单的模板:

<div ng-view class="reveal-animation" >
<br/>
    <div class="container">    
        <div class="row">
            <div class="panel panel-primary">
                <div class="panel-heading">
                    <p class="panel-title" data-i18n-attr="{title: 'common.needScriptTag'}"><strong data-i18n="common.componentJavascript">Component Javascript</strong> <em>({{ckpage.url}})</em></p>
                </div>
                <div class="panel-body">
                    <div ng-repeat="(key, value) in ckpage.components">
                        <div class="form-group col-md-12">
                            <label ng-model="value.name" data-i18n-attr="{title: 'common.needScriptTag'}">{{value.name}} ({{value.vpath}})</label>
                            <!-- It is disabled for editing if the component is not editable -->
                            <textarea ng-disabled="!value.editable" class="form-control full-width input-sm" ng-model="value.dcrJavascript" id="key" rows="10" data-i18n-attr="{title: 'common.needScriptTag'}">{{value.dcrJavascript}}</textarea>
                        </div> 
                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

运行 ng-repeat 时出现以下错误:

Error: Invalid argument.
   at Anonymous function (http://7.28.108.148/iw-cc/seed/libs/angular-1.4.8/angular.min.js:70:389)
   at Anonymous function (http://7.28.108.148/iw-cc/seed/libs/angular-1.4.8/angular.min.js:95:497)
   at Anonymous function (http://7.28.108.148/iw-cc/seed/libs/angular-1.4.8/angular.min.js:128:379)
   at r.prototype.$digest (http://7.28.108.148/iw-cc/seed/libs/angular-1.4.8/angular.min.js:131:147)
   at r.prototype.$apply (http://7.28.108.148/iw-cc/seed/libs/angular-1.4.8/angular.min.js:134:76)
   at g (http://7.28.108.148/iw-cc/seed/libs/angular-1.4.8/angular.min.js:87:442)
   at T (http://7.28.108.148/iw-cc/seed/libs/angular-1.4.8/angular.min.js:92:50)
   at w.onload (http://7.28.108.148/iw-cc/seed/libs/angular-1.4.8/angular.min.js:93:78)

如果我从 textarea 中删除 ng-disabled="!value.editable"ng-model="value.dcrJavascript"元素错误消失了。 value.dcrJavascript 存在是因为 {{value.dcrJavascript}} 在网页中提供了正确的值并且调试显示 value.editable 也存在。

尽管有错误,但整个页面仍然有效,但我不喜欢出现我无法解释的错误,因为它们稍后可能会回来咬我。

四处搜索我似乎找不到遇到此错误的人。

最佳答案

问题不在于中继器。 <textarea/> 的内部文本应该由 ng-model 处理.删除内部 {{value. dcrJavascript}} .所以不是:

<textarea ng-disabled="!value.editable" 
          class="form-control full-width input-sm" 
          ng-model="value.dcrJavascript" 
          id="key" rows="10" 
          data-i18n-attr="{title: 'common.needScriptTag'}">

          {{value.dcrJavascript}}
</textarea>

这样做:

<textarea ng-disabled="!value.editable" 
          class="form-control full-width input-sm" 
          ng-model="value.dcrJavascript" 
          id="key" rows="10" 
          data-i18n-attr="{title: 'common.needScriptTag'}">
</textarea>

关于javascript - ng-repeat 中的参数无效,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41599277/

相关文章:

javascript - 对无效返回值应用 ng 类

android - 如何在 ionic 框架中获取设备 UUID

javascript - Nuxt.js |打开一个新页面作为带有路由的模式窗口

javascript - 在 dataTables 中使用 ajax.reload() 保存输入文本

javascript - 在angular JS中,如何执行一行JQuery代码?

javascript - 转换后的 blob 正在获取格式不正确的文件

Angularjs 将数组作为参数传递给自定义过滤器

javascript - 如何创建一年中每天增加 1/365 部分的圆轮廓?

javascript - 检查 SQLite 数据库项不存在

javascript - 如何将此代码从同步传输到异步(nodejs)?