0

我在 ng-repeat 中显示两个文本角度的 WYSIWYG 字段,就像这样

<div data-ng-repeat="n in langInput.values" class="sell__description-container">
    <h2 class="sell__heading-secondary">
        Opis w języku: {{ n.selected }}
    </h2>
    <div text-angular="text-angular"
         name="htmlcontent_{{n.id}}_{{ n.selected }}"
         data-ng-model="descriptionHtml[$index]"
         class="sell__text-editor"
         required>
    </div>
    {{ descriptionHtml[$index] }}

在字段下方,我正在展示它的模型并且它工作正常。它显示带有我在编辑器中选择的所有这些标签的文本。

但是下面的 200 行我有一些类似于摘要的内容,我想在其他 ng-repeat 循环中再显示一次这个模型:

<tr data-ng-repeat="n in langInput.values">
    <td>Opis ({{ n.selected }})</td>
    <td>
        {{ descriptionHtml[$index] }}
        <br>
        {{ $index }}
    </td>
</tr>

在这里它没有显示描述值。尽管 $index 确实是 0 和 1 就像上面一样.. 为什么会这样?怎么修?


目前我只想让它工作。稍后我不会将其显示为字符串,td但我会将此模型作为字符串传递给函数,该函数将打开引导模式窗口,在该窗口中我将使用 ng-bind-html 将此字符串绑定为 html,因此它将是预览之类的。

4

1 回答 1

1

我发现了问题。我从 textangular 文档中复制了代码,它有自己的控制器,所以我的控制器结构就像

<div ng-controller="external">
    <div ng-controller="textEditor">
        here i have ng-repeat and here i'm also displaying content of editor
    </div>
    here i tried to ng-repeat over it again
</div>

所以在 textEditor ctrl 中它在正确的范围内并且正确显示。我需要将此值从子范围(文本编辑器)传递到父范围(外部)。


在父控制器中声明 $scope.descriptionHtml 解决了这个问题,因为子控制器继承了范围,当我在子控制器中修改它时,父控制器也会被刷新。

于 2018-06-18T03:02:36.483 回答