首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >指令之间的交互作用

指令之间的交互作用
EN

Stack Overflow用户
提问于 2014-02-10 07:05:26
回答 2查看 55关注 0票数 0

我有两个指令,一个显示对象列表,另一个将对象添加到该列表中。我遇到的问题是,该列表以这种方式与另一个元素列表联系在一起:

主要代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!--main code -->
<div>
    <ul>
        <li>
            <element-a></element-a>
        </li>
        <li>
            <element-a></element-a>
        </li>
        <li>
            <element-a></element-a>
        </li>
        <li>
            <element-a></element-a>
        </li>
    </ul>
</div>

元素A模板

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!-- element-a template -->
<ul>
    <li> 
        <my-element-list></my-element-list>
    </li>
    <li>
        <my-element-list></my-element-list>
    </li>
    <li>
        <my-element-list></my-element-list>
    </li>
    <li>
        <my-element-list></my-element-list>
    </li>
</ul>

我的列表模板:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
<!-- my-element-list template -->
<button type="button" data-ng-click="addElement()">Add</button>
<ul>
    <li>
        my element data
    </li>
    <li>
        my element data
    </li>
    <li>
        my element data
    </li>
</ul>

我对角度还不熟悉,但我不希望在每个列表中都有add指令,因为这将有许多不需要的代码添加到html中。此外,add是一个具有模板等的指令,用于显示将请求元素数据的模态对话框。

这是正确的做法吗?单击“添加”按钮时,如何才能显示“添加模式”对话框?我尝试过使用$broadcast$emit,但是add指令不是元素列表的父/子元素。

EN

回答 2

Stack Overflow用户

发布于 2014-02-10 07:10:04

你可能想试着用另一种方式来做这件事。您的列表应该从控制器中的项数组中生成,然后使用内置的角指令ng-repeat将其呈现到模板中。然后,向列表中添加新项应该像确保控制器中的addElement()函数将项添加到数组一样简单。如果列表中的每个元素也需要自己的模板,请在ng-repeat循环中使用ng-repeat指令。

ng-重复文档

ng-包括文档

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21680642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文