使用ng-model在p元素中显示输入值

时间:2017-09-28 16:23:54

标签: javascript angularjs

我正在使用名为slick的滑块模块。我有一个标签标题,用于跟踪和显示幻灯片的索引,以便用户可以看到。问题是标签标题与每张幻灯片一起滑动,因为该标签位于转盘内(显然)。

我将标签标题移出幻灯片,并计划显示使用ng-modelng-value将数据绑定到幻灯片之外的元素。像这样:

<div>
     <p>Blue Renewal {{vm.slide.number}} of {{$ctrl.blueRenewals.length}}</p>
</div>
<slick data="$ctrl.phaseArr" >
     <div ng-repeat="item in $ctrl.phaseArr">
        <div>
            <input type="text" ng-model="vm.slide.number" ng-value="{{$index + 1}}">
        </div>
    </div>
</slick>

在.js中:

vm.slide = {
    number: '1'
}

问题

为什么输入绑定的值不是光滑轮播之外的p元素?

1 个答案:

答案 0 :(得分:1)

很难说这么少的代码继续下去,但我怀疑你遇到了范围问题。

这里至少有两个,可能至少有三个级别的范围。您的标题位于您的控制器中,可访问其范围的属性。因此,当您绑定到vm.slide.number时,它会查看您的范围。 “光滑”组件可能会创建自己的范围,这可能是vm来自的地方。如果是这种情况,您的视图(在光滑范围的父级上)无法在其上看到属性。

(ngRepeat还会创建子范围,但我不认为这是问题所在。)