Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

dynamically add div container in angular 6

How to dynamically add div containers in angular?.

Please look at my html code. Whenever I will click "Add" button, one new div should add left side of that button. Dynamically it should add multiple containers based on how any clicks. Everything should add in horizontal wise. If it is more containers by default it should add scroll and it be in uniform. Can anyone please help me to do this in angular 6.

#content{
    width:100%;
    height:90px;
    border:1px solid black;
}
#contentInside{
    width:100px;
    height:70px;
    margin:7px;
    border:1px solid black;
    display:inline-flex;
}
<div id="content">
    <div id="contentInside">
    
    </div>
    <button (click)="add()">Add</button> 

</div>

I am new in angular. Please anyone help me to do this.

like image 755
sathish kumar Avatar asked Jun 19 '18 09:06

sathish kumar


2 Answers

Easiest way to do this is with an array. Let me show you how.

Here is the stackblitz

I create an array of empty elements, and call it containers.

Every time, user clicks on Add button, I push another element to this array. The element I push does not matter, so I push the current length of the array so it will end up like [0, 1, 2, 3, 4...]

@Component({
  selector: 'my-comp',
  template: `
    <div id="content">
      <div id="contentInside" *ngFor="let container of containers"></div>
      <button (click)="add()">Add</button>
    </div>
  `,
  styles: [`
    #content{
      width:100%;
      height:90px;
      border:1px solid black;
    }
    #contentInside{
      width:100px;
      height:70px;
      margin:7px;
      border:1px solid black;
      display:inline-flex;
    }
  `]
})

export class MyComponent implements OnInit {

  containers = [];

  constructor() { }

  ngOnInit() { }

  add() {
    this.containers.push(this.containers.length);
  }
}
like image 144
Bunyamin Coskuner Avatar answered Nov 12 '22 21:11

Bunyamin Coskuner


Try Using this example with updated css for autoscroll:

https://stackblitz.com/edit/angular-pujraw?file=src%2Fapp%2Fapp.component.css

like image 2
Dinesh Ghule Avatar answered Nov 12 '22 19:11

Dinesh Ghule