2017-03-01 75 views
0

我的下一个组件:如何在运行时创建角度2选择器?

import { Component, OnInit } from '@angular/core'; 

@Component({ 
    selector: 'todo', 
    templateUrl: 'app/todo/todo.component.html', 
    styleUrls: ['app/todo/todo.component.css'] 
}) 
export class Todo implements OnInit{ 
    placeHolder: string = "Please enter a TODO task"; 
    taskValue: string = ""; 

    ngOnInit(): void { 

    }; 
} 

,我也有这个成分:

import { Component, OnInit } from '@angular/core'; 

@Component({ 
    selector: 'main-panel', 
    templateUrl: 'app/main-panel/main-panel.component.html', 
    styleUrls: ['app/main-panel/main-panel.component.css'] 
}) 
export class MainPanel implements OnInit{ 
    panelTitle: string = 'Welcome to ODOT'; 
    sTodo: string = 'TODO'; 
    sDoing: string = 'Doing'; 
    sDone: string = 'Done'; 
    userName: string = 'User name'; 
    password: string = 'Password'; 
    signUp: string = 'Sign up'; 
    signIn: string = 'Sign in'; 

    addTodoTask(): void { 
     console.log("Hi"); 
    }; 

    ngOnInit(): void {  
    }; 
} 

我想,每一次addTodoTask事件触发我将与所有的属性,并添加新的待办事项选择方法到主面板.HTML,有什么想法?

感谢,

吉文Zambrovski

+0

你说的是动态加载你的页面上的组件? – amansoni211

+0

@ amansoni211我认为是这样的... –

+1

我认为这是你正在寻找的。 http://stackoverflow.com/documentation/angular2/831/dynamically-add-components-using-viewcontainerref-createcomponent/28405/dynamically-add-component-on-specific-eventclick#t=201703010845477112628 – amansoni211

回答

0
items = []; 
addTodoTask(): void { 
    this.items.push(this.items.length); 
} 
<todo *ngFor="let item of items"> 
<button (click)="addTodoTask()">add</button> 
+0

项目之间的连接是什么和Todo组件? –