Khi tôi bắt đầu sử dụng Angular 2, tôi đã có ý tưởng rằng lý do chính để tạo ra các thành phần là vì bạn có thể tái sử dụng chúng. EG:Sử dụng lại các thành phần trong Angular 2
<custom-button id="button1">button 1</custom-button>
<custom-button id="button2">button 2</custom-button>
Đây có phải là lý do lớn để đi với góc 2 và các thành phần trong ứng dụng web và có thể thực hiện được không?
Tôi chưa tìm thấy tài nguyên nào trả lời cụ thể câu hỏi của tôi về cách thực hiện việc này.
Tôi muốn tạo nút và đầu vào, 2 phần tử html cơ bản và thường được sử dụng nhất và làm cho chúng có thể sử dụng lại được.
Tôi đã cố gắng tạo thành một nút và sử dụng lại nó.
Tôi cố gắng để sử dụng nó trong một template html như thế này:
<custom-button>some text</custom-button>
<custom-button>different text</custom-button>
Tuy nhiên các văn bản không hiển thị trên nút. Điều này có thể được thực hiện?
Một điều khác mà tôi tự hỏi là id html duy nhất khi thực hiện việc này. Tôi có thể thêm thuộc tính id html duy nhất cho từng trường hợp không?
lẽ thích:
<custom-button id="display-bikes">bikes</custom-button>
<custom-button id="display-helmets">helmets</custom-button>
Và sau đó tôi có thể làm một số css cụ thể bằng cách sử dụng id duy nhất của nguyên tố này?
Đó là tất cả những gì tôi muốn biết và cách thực hiện.
Tuy nhiên đây là phần còn lại của mã của tôi liên quan đến:
thành phần:
import { Component } from '@angular/core';
@Component({
selector: 'custom-button',
templateUrl: 'app/shared/button.component.html',
styleUrls: ['app/shared/button.component.css']
})
export class ButtonComponent { }
css:
button {
font: 200 14px 'Helvetica Neue' , Helvetica , Arial , sans-serif;
border-radius: 6px;
height: 60px;
width: 280px;
text-decoration: none;
background-color: $accent;
padding: 12px;
color: #FFF;
cursor: pointer;
}
button:focus {
outline:0 !important;
}
html:
<button md-raised-button type="button" class="btn text-uppercase flex-sm-middle">
try now <!-----lets get rid of this and let the client decide what text to display somehow???
</button>
Cảm ơn.Sự đóng gói này có nghĩa là nếu bạn làm '
abc
' ở đâu đó trong khuôn mẫu html thành phần, phạm vi của id đó chỉ là thành phần, vì vậy bạn có thể cung cấp cho các phần tử trong các thành phần khác nhau cùng một id ? – BeniaminoBagginsGiả sử bạn đang ở trong trường hợp mặc định/mô phỏng và kiểu thành phần của bạn được đóng gói với thuộc tính: [_ngcontent-1] Bây giờ, bất kỳ quy tắc CSS thành phần nào của bạn sẽ được cung cấp tự động với [_ngcontent-1] ở trên cùng gốc của bộ chọn. Cách dễ nhất để hiểu là kiểm tra các kiểu của thành phần Angular 2 tại thời gian chạy với các công cụ của nhà phát triển. Tôi nghĩ bạn nên thực sự giữ ID của bạn duy nhất trong ứng dụng, bạn không cần chúng trong một thành phần. – KnightB4