更新时间:2023-02-09 GMT+08:00
app-preview-ticketImage组件
HTML
<div [style]="item.style" class="ticketImage">
<div class="ticketImage_List">
<div
// ngFor为循环指令
*ngFor="let listItem of item.content.divList1.list; index as i1"
(click)="events(listItem.img)"
class="ticketImage_List_item"
[ngClass]="{ ticketImage_List_item_two: item.content.divList1.list.length === 2 }"
>
<img [src]="listItem.img.src" alt="" srcset="" />
<span [innerHTML]="listItem.text.textValue"></span>
</div>
</div>
<div class="ticketImage_TextList">
<div *ngFor="let listItem2 of item.content.divList2.list; index as i2" class="ticketImage_TextList_item">
// innerHTML会把代码片段插入到当前节点中
<div class="ticketImage_TextList_item_title" [innerHTML]="listItem2.textUp.textValue"></div>
<div class="ticketImage_TextList_item_content" [innerHTML]="listItem2.textDown.textValue"></div>
</div>
</div>
<div class="ticketImage_longText">
<div *ngFor="let listItem3 of item.content.divList3.list; index as i3" class="ticketImage_longText_item">
<div class="ticketImage_longText_item_title" [innerHTML]="listItem3.textUp.textValue | html"></div>
<div class="ticketImage_longText_item_content" [innerHTML]="listItem3.textDown.textValue"></div>
</div>
</div>
<div class="ticketImage_tip" [innerHTML]="item.content.divTip.text.textValue"></div>
</div>
CSS
.ticketImage {
padding: 0 23px !important;
box-sizing: border-box;
position: absolute;
.ticketImage_List {
display: flex;
text-align: center;
justify-content: center;
margin-bottom: 18px;
&_item {
width: 60px;
margin-right: 15px;
&:last-child {
margin-right: 0;
}
img {
width: 38px;
height: 38px;
}
span {
display: block;
color: #666666;
font-size: 12px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
}
&_item_two {
width: 120px;
display: flex;
align-items: center;
margin-top: 10px;
margin-bottom: 10px;
img {
margin-right: 8px;
}
}
}
.ticketImage_TextList {
display: flex;
flex-wrap: wrap;
margin-bottom: 6px;
&_item {
width: 33.33%;
text-align: left;
margin-bottom: 6px;
&:nth-child(3n - 1) {
text-align: center;
}
&:nth-child(3n) {
text-align: right;
}
&_title {
color: #a9a9a9;
font-size: 12px;
margin-bottom: 2px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 16px;
}
&_content {
color: #1d1d1d;
font-size: 14px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 19px;
}
}
}
.ticketImage_longText {
margin-bottom: 12px;
&_item {
margin-bottom: 6px;
&_title {
color: #a9a9a9;
font-size: 12px;
margin-bottom: 2px;
overflow: hidden;
text-overflow: ellipsis;
height: 16px;
white-space: nowrap;
}
&_content {
color: #1d1d1d;
font-size: 14px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
height: 19px;
}
}
}
.ticketImage_tip {
height: 42px;
overflow-y: auto;
color: #a9a9a9;
font-size: 14px;
&::-webkit-scrollbar {
width: 4px;
}
&::-webkit-scrollbar-track {
background-color: #fff;
-webkit-border-radius: 2em;
-moz-border-radius: 2em;
border-radius: 2em;
}
&::-webkit-scrollbar-thumb {
background-color: #e6d9d9;
-webkit-border-radius: 2em;
-moz-border-radius: 2em;
border-radius: 2em;
}
}
}
JavaScript
// 点击事件
events(val) {
this.PreviewService.emit(val.event);
}
父主题: 子组件代码示例