小编rwd*_*ial的帖子

Angular Component Constructor被称为两次

我是Angular的新手,并且遇到了一个问题,一个子组件的构造函数被调用了两次,第二次被调用它是第一次清除属性集.

这是父组件:

@Component({
    selector: 'parent-item',
    templateUrl: '...',
    providers: [ItemService]
})
export class ParentItemComponent {
    public parentItemId;
    public model: ParentItem;

    constructor(itemService: ItemService, elm: ElementRef) {
        this.parentItemId = elm.nativeElement.getAttribute('parentItemId'); 
        itemService.getParentItem(this.parentItemId).subscribe(data => this.model = data);
    }
}
Run Code Online (Sandbox Code Playgroud)

在模板中引用了子组件:

<child-items [parentItemId]="parentItemId">Loading...</<child-items>
Run Code Online (Sandbox Code Playgroud)

这是子组件:

@Component({
    selector: 'child-items',
    templateUrl: '...',
    providers: [ItemService]
})
export class ChildItemsComponent {
    @Input() public parentItemId: number;
    public items: Observable<ChildItem[]>;

    constructor(private itemService: ItemService) {
        console.log("constructor");
    }

    ngOnInit() {
        if (this.parentItemId) {
            this.items = this.itemService.getChildItems(this.parentItemId);
        }  
        else {
            console.log("Parent Id not set!");
        }
    } …
Run Code Online (Sandbox Code Playgroud)

javascript html5 typescript angular-components angular

9
推荐指数
1
解决办法
6824
查看次数

具有Http触发功能的连续Azure WebJob

我目前有一个天蓝色的webjob,它执行从一个数据库到另一个数据库的每日同步,但还想增加手动触发同步的功能。我在webjob项目中设置了以下功能:

public static void SyncData([TimerTrigger("0 0 5 * * *", RunOnStartup = false)] TimerInfo timerInfo) { }

[NoAutomaticTrigger]
public static Task SyncAll(TraceWriter log){ }
[NoAutomaticTrigger]
public static Task SyncBranches(TraceWriter log){ }
[NoAutomaticTrigger]
public static Task SyncCustomers(TraceWriter log){ }
[NoAutomaticTrigger]
public static Task SyncInventory(TraceWriter log){ }
Run Code Online (Sandbox Code Playgroud)

我可以在webjob下的Kudu仪表板中看到这些功能,但是不确定如何通过MS文档(此处)上列出的http请求触发这些功能:

http://<yourapp>.azurewebsites.net/api/<funcname> 
Run Code Online (Sandbox Code Playgroud)

当我向该端点发出请求时,我会收到404响应-为了通过http请求手动触发这些功能,我需要做什么?

谢谢,瑞安

c# azure azure-webjobs

6
推荐指数
1
解决办法
2685
查看次数