Tôi đã tạo một chỉ thị rất đơn giản hiển thị cặp khóa/giá trị. Tôi muốn có thể tự động ẩn phần tử nếu nội dung được chuyển đổi bị trống (độ dài bằng không hoặc chỉ khoảng trắng).Làm cách nào để ẩn phần tử nếu nội dung được nhúng bị trống?
Tôi không thể tìm ra cách truy cập nội dung được chuyển đổi từ trong chỉ thị.
app.directive('pair', function($compile) {
return {
replace: true,
restrict: 'E',
scope: {
label: '@'
},
transclude: true,
template: "<div><span>{{label}}</span><span ng-transclude></span></div>"
}
});
Ví dụ: tôi muốn phần tử sau được hiển thị.
<pair label="My Label">Hi there</pair>
Nhưng hai yếu tố tiếp theo phải được ẩn vì chúng không chứa bất kỳ nội dung văn bản nào.
<pair label="My Label"></pair>
<pair label="My Label"><i></i></pair>
Tôi mới đến Angular nên có thể có cách xử lý tuyệt vời thứ này. Bất kỳ trợ giúp được đánh giá cao.
+1 cho bất kỳ câu trả lời nào cho thấy trường hợp sử dụng cho transcludeFn bí truyền :). –
trong transcludeFn, 'clone.text(). Trim(). Length' sẽ chính xác hơn một chút – alalonde
+1 cảm ơn, điều này vừa tiết kiệm cho tôi rất nhiều thời gian. – cgTag