小编All*_*ang的帖子

Angular 2如何使子组件等待asyn数据准备就绪

我将异步数据从父组件传递到子组件.并且子组件需要知道数据的长度才能执行某些操作.

问题是子组件不能使用'Oninit'挂钩来工作,因为此时数据不可用.那我该怎么做?

父组件代码如下所示:

@Component({
    moduleId: module.id,
    selector: 'parent',
    template: `<div>
                    <child [items]="items | async">
                </div>`
})

export class Parent implements OnInit {

    items: Items[];

    constructor(
        private itemService: ItemService,
        private router: Router
    ) { }    

    ngOnInit() {
        this.itemService.getItemss()
            .subscribe(
                items => this.items = items,
                error => this.errorMessage = <any>error
            );
    }

}
Run Code Online (Sandbox Code Playgroud)

子组件看起来像:

@Component({
    moduleId: module.id,
    selector: 'child',    
    template: `<div>
                    <div *ngFor="let itemChunk of itemChunks"></div>
                    content here
                </div>`
})
export class child implements OnInit{
    @Input() items: Items[];
    itemChunks: Items[][];

    ngOnInit() { …
Run Code Online (Sandbox Code Playgroud)

angular

25
推荐指数
2
解决办法
3万
查看次数

这段代码是防御性编程,还是不好的做法?

我和我的同事就这段代码进行了辩论:

var y = null;
if (x.parent != null)
    y = x.parent.somefield;
Run Code Online (Sandbox Code Playgroud)

我的观点是,在代码所在的位置,x.parent不应该是null.当它为空时,我们有一个严重的问题,我想知道它!因此,不应该存在空检查,并且发生下游异常.

我的同事说这是防御性编程.并且null检查确保代码不会破坏应用程序.

我的问题是,这是防御性编程吗?还是一个不好的做法?

注意:重点不在于谁.我试图从这个例子中学习.

c# defensive-programming

20
推荐指数
2
解决办法
6485
查看次数

如何使用发布日期作为.net项目的程序集版本?

我知道汇编版本的格式是:

<major version>.<minor version>.<build number>.<revision>
Run Code Online (Sandbox Code Playgroud)

有没有办法让版本号成为当前日期?

例如,如果我今天编译构建版本,版本号应如下所示:

2016.02.11.xxxxx
Run Code Online (Sandbox Code Playgroud)

如果将程序集版本设置为1.0.0,则通常会获得xxxxx.*.

我用Google搜索,但没有找到答案(甚至不是问题).

.net c#

5
推荐指数
2
解决办法
2137
查看次数

这个 CSS 的等效 -webkit-gradient 是什么?

样式需要向后兼容。

尝试谷歌搜索-webkit-gradient语法并自己弄清楚,但找不到文档......

那么,-webkit-gradient这个 CSS的等价物是什么:

background: -webkit-linear-gradient(left, #E0E0E0 0%, #E0E0E0 10%, rgba(255, 255, 255, 0) 11%, rgba(255, 255, 255, 0) 100%),
            -webkit-linear-gradient(top, #F9FCF6 0%, #BBE6BF 100%); /* Chrome10+,Safari5.1+ */
Run Code Online (Sandbox Code Playgroud)

html css webkit

5
推荐指数
2
解决办法
5182
查看次数

C# 如何创建一个可以返回子类或父类的函数

不知道我标题有没有说清楚。我想要的是这样的:
有一个父类:

public class parent  
....  
Run Code Online (Sandbox Code Playgroud)

还有一个儿童班:

public class child : parent  
....  
Run Code Online (Sandbox Code Playgroud)

现在我需要一个可以返回以下任一结果的方法:

List<(what goes here?)> GetSomeValue(string id, boolean needChild) {  
  ......  
  if (needChild)  
    return BuildChildResult(id);  
  else  
    return BuildParentResult(id);  
}  
Run Code Online (Sandbox Code Playgroud)

这是可以做的事情吗?
括号里应该写什么?

c#

0
推荐指数
1
解决办法
2565
查看次数

C# 客户端如何将替换变量传递给 sendgrid 营销模板?

有一个预定义的营销模板,模板的相关部分如下所示:

嗨 [%first_name | 亲爱的粉丝%],xxxxxx

sendgrid 模板变量替换有很多不同的语法,这非常令人困惑。例如,我见过 [%variable_name%]、{{variable_name}}、-variable_name- 和 <%variable_name%>

如何将替换/个性化/模板数据(只是列出我见过的似乎指代同一事物的不同名称)从 C# 客户端传递到模板?

c# sendgrid sendgrid-templates

0
推荐指数
1
解决办法
2346
查看次数