首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >更新Angular child 1.5组件不工作

更新Angular child 1.5组件不工作
EN

Stack Overflow用户
提问于 2017-07-16 08:00:17
回答 1查看 278关注 0票数 0

我正在使用一个Angular 1.5组件来构建以下结构:

代码语言:javascript
运行
AI代码解释
复制
<parent>
    <child active="model.active">
    <child active="model.active">
    <child active="model.active">
</parent>

我的组件:

代码语言:javascript
运行
AI代码解释
复制
(function() {
'use strict' 
angular.module('module').component('child',
    {
        templateUrl: 'template.html',
        bindings: {
            active: '<'
        },
        controllerAs: 'model',
        controller: function() {

            var model = this;

            model.select = function() {
                model.deselectAllChildren()(model);
                model.active = true;
            };
        }
    });
})();

deselectAllChildren方法:

代码语言:javascript
运行
AI代码解释
复制
model.deselectAllChildren = function(tabModel) {
    model.active = false;
};

当用户选择其中一个子组件时,我希望它处于活动状态,而其他子组件处于非活动状态。因此,该逻辑使所有子项都处于非活动状态(以清除先前的选择),然后使选定的子项处于活动状态。默认情况下,父级的model.active属性为false。这对于第一个select很有效,但是后续的select不起作用,因为之前选择的子组件不会取消选择,因为model.active = false更改不会传播到子组件(因为父组件的model.active值仍然是false -但是一些子组件的model.active等于true。这无疑是一个作用域/绑定问题;我觉得我需要强制将model.active = false下推到所有子级。有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2017-07-16 21:27:04

这样如何:

代码语言:javascript
运行
AI代码解释
复制
<parent>
    <child active="model.active === 0" on-select="model.active=0">
    <child active="model.active === 1" on-select="model.active=1">
    <child active="model.active === 2" on-select="model.active=2">
</parent>
代码语言:javascript
运行
AI代码解释
复制
angular.module('module').component('child',
{
    templateUrl: 'template.html',
    bindings: {
        active: '<',
        onSelect: '&'
    },
    controllerAs: 'model',
    controller: function() {

        var model = this;

        model.select = function() {
            model.onSelect();
       };
    }
});
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45126347

复制
相关文章
Angular 主从组件
把所有特性都放在同一个组件中,将会使应用“长大”后变得不可维护。 你要把大型组件拆分成小一点的子组件,每个子组件都要集中精力处理某个特定的任务或工作流。
HoneyMoose
2019/05/30
1.2K0
Angular 组件样式
但某些时候我们需要根据不同的条件,为指定元素应用不同的样式。对于这种场景,我们可以使用属性绑定,如:
阿宝哥
2019/11/05
2K0
Angular 主从组件
把所有特性都放在同一个组件中,将会使应用“长大”后变得不可维护。 你要把大型组件拆分成小一点的子组件,每个子组件都要集中精力处理某个特定的任务或工作流。
HoneyMoose
2019/05/30
1.3K0
Angular 组件通信
上一篇,我们讲了 Angular 结合 NG-ZORRO 快速开发。前端开发,很大程度上是组件化开发,永远离不开组件之间的通信。那么,在 Angular 开发中,其组件之间的通信是怎么样的呢?
Jimmy_is_jimmy
2022/04/15
2K0
Angular UI 组件
官网:https://valor-software.com/ngx-bootstrap/#/
用户2098522
2018/05/05
1.5K0
Angular UI 组件
Angular 动态创建组件
上面代码中,我们定义了一个简单的 AlertComponent 组件,该组件有一个输入属性 type ,用于让用户自定义提示的类型,此外还包含了一个输出属性 output,用于向外部组件输出信息。我们的自定义组件最终是一个实际的 DOM 元素,因此如果我们需要在页面中插入该元素,我们就需要考虑在哪里放置该元素。
阿宝哥
2019/11/05
3.7K0
Angular 4 组件通信
最近在项目上,组件跟组件之间可能是父子关系,兄弟关系,爷孙关系都有。。。。。我也找找了很多关于组件之间通讯的方法,不同的方法应用在不同的场景,根据功能需求选择组件之间最适合的通讯方式。下面我就总结一下关于组件通讯的N多种方法。
半指温柔乐
2020/06/10
9180
Angular树组件开发
首先要注意的是this.DefaultConfig这个配置。一般来说,展示数据需要两个属性:Name和Code,Name是该节点在界面上展示的文字,他是可以重复的,展示的时候也会考虑添加一些符合用户阅读习惯的信息。Code是该节点的主键,即是使用树组件时判断选中了哪个节点的唯一标识。开发过程中,使用的数据结构并不一定恰好是Name和Code,因此允许开发者指定自己数据结构中对应功能的属性名。Member是该节点的子节点列表。同样我们允许开发者指定属性名。TreeData是用户需要展示的数据。
4cos90
2021/03/27
1.4K0
Angular DataGrid组件开发
dataGrid的组件的基本功能可以说非常简单,用户输入的对象中需要包含三个参数:
4cos90
2021/04/04
1.2K0
Angular日期组件开发
这个组件可以拆分成两部分,第一个部分是时间框和时间选择窗口,包括确定,取消按钮,即目录中的dateTime组件。第二个部分是通过滚轮选择日期,即目录中的ScrollDateTime组件。目录中还包含一个自定义管道,考虑到滚轮选择日期时,只有中间的数字是有用的,因此上下两个数字可用管道生成,不需要用额外的变量去控制。
4cos90
2021/03/07
1.5K0
React 中引入 Angular 组件
为了在我的编辑器中使用 Angular,我用 Angular 编写了一个重命名功能。而为了使用它,我得再次使用一次 customEvent,而在这个微前端架构的系统中,其事件通讯机制已经相当的复杂。在这部分的代码进一步恶化之前,我得尝试有没有别的方式。于是,我想到了之前在其它组件中使用的 Web Components 技术,而 Angular 6 正好可以支持。
不知雨
2018/08/21
2.1K0
高级 Angular 组件模式 (1)
Angular到现在已经到5.x的版本了,对于MVVM框架我首先接触的是angularjs后来又转为react,之后换了工作因项目技术栈的原因又转换到之前的angularjs,在实际工作中实施了公司几个比较重要项目中前端的重构工作,这个过程逐步意识到,对于MVVM框架本身,在使用层面讲,掌握一些通用的模式是很有必要的,尤其现在已经很流行的组件化开发。这样我们在实际工作中就可以无缝(或者花很少的时间成本)转化到任何的MVVM框架,并把节省下来的时间去学习新的知识。
littlelyon
2018/10/19
6580
angular组件的基本使用
angular组件的基本使用 组件 组件模板 ng generate component xxx 新建组件(大驼峰命名) 属性绑定 <img [src]="imgSrc" /> public imgSrc:string="./assets/imgs/1.jpg"; 事件绑定 <button class="btn btn-success" (click)="btnClick($event)">测试事件</button> public btnClick(event):void{ alert
一个淡定的打工菜鸟
2022/08/23
1.6K0
高级 Angular 组件模式 (6)
Render Props最近在React社区中引起了轰动,但是与之类似的模式在Angular中似乎并没有得到太多关注。我在之前写的文章提及过,TemplateRefs就是Angular中的Render Props,同时我会在这篇文章中列举一个简单易用的例子。
littlelyon
2020/01/21
1.2K0
Angular 组件动态传入模板
比如 ng-zorro项目中的 BackTop回到顶部 组件就支持自定义模板。 默认时可以使用<nz-back-top></nz-back-top>。获得这个图标。
mafeifan
2018/12/28
1.9K0
Angular Elements 及其工作原理
现在,Angular Elements 这个项目已经在社区引起一定程度的讨论。这是显而易见的,因为 Angular Elements 提供了很多开箱即用的、十分强大的功能:
littlelyon
2018/10/19
2.4K0
Angular Elements 及其工作原理
angular父子组件传值
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/145508.html原文链接:https://javaforall.cn
全栈程序员站长
2022/08/27
8730
点击加载更多

相似问题

Angular - Child组件不呈现来自http请求的数据更新

110

Angular 1.5嵌套组件

15

Angular 1.5组件绑定,但控制器不工作

21

$routerCanActivate不工作(Angular 1.5组件路由器,又名ngComponentRouter)

13

Angular 1.5父子组件问题

28
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
社区富文本编辑器全新改版!诚邀体验~
全新交互,全新视觉,新增快捷键、悬浮工具栏、高亮块等功能并同时优化现有功能,全面提升创作效率和体验
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文