- vừa được xem lúc

Thêm thẻ div trong foreach Vue.js

0 0 16

Người đăng: MacKen

Theo Viblo Asia

Laravel

Mình lấy 5 bài viết ra từ file .vue với mã sau :

<div v-if="!isLoading" class="owl-carousel" id="owl-slider"> <template v-for="item in data" :key="item.id" v-if="!isLoading && data.length"> <a :href="item.url" :title="item.name" class=""> <div class="re-name-and-count"> <span class="re-name">{{ item.name }}</span> <span class="re-count"></span> </div> <img class="thumb img-fluid" :data-src="item.image" :src="item.image" :alt="item.name" :title="item.name"> </a> </template>
</div>
<script> export default { data: function() { return { isLoading: true, data: [] }; }, mounted() { this.getData(); }, props: { url: { type: String, default: () => null, required: true }, show_empty_string: { type: Boolean, default: () => false }, }, methods: { getData() { this.data = []; let url = this.url; this.isLoading = true; axios.get(url) .then(res => { this.data = res.data.data ? res.data.data : []; this.isLoading = false; }) .catch(() => { this.isLoading = false; console.log(res); }); }, } }
</script>

Với mã trên mình muốn thêm thẻ div và đóng thẻ div lại trước <a> và sau </a>.

Ví dụ :

> > <div v-if="!isLoading" class="owl-carousel" id="owl-slider">
> > <template v-for="item in data" :key="item.id" v-if="!isLoading && data.length">
> > > > Nếu id =1 <div class="1">
> > Nếu id =2 và id= 3 <div class="2">
> > > > <a :href="item.url" :title="item.name" class="">
> > <div class="re-name-and-count">
> > <span class="re-name">{{ item.name }}</span>
> > <span class="re-count"></span>
> > </div>
> > <img class="thumb img-fluid" :data-src="item.image" :src="item.image" :alt="item.name" :title="item.name">
> > </a>
> > > > Nếu id =1 </div>
> > Nếu id =2 và id= 3 </div>
> > > > </template>
> </div>

Xin hãy giúp tôi giải quyết vấn đề này. Cảm ơn trước.

Mình viết lại mã sau :

<div v-if="!isLoading" class="owl-carousel state-slider" id="state-slider"> <template v-for="(item, key) in data" :key="item.id" v-if="!isLoading && data.length"> <div class="re-slider-item"> <div class="re-li-div" v-if="!(key % '5')"> <template v-if="key == '1' || key == '3' || key == '6' || key == '8'"> <div class="re-li-div re-grid"> </template> <div> <a :href="item.url" :title="item.name" class=""> <div class="re-name-and-count"> <span class="re-name">{{ item.name }}</span> <span class="re-count">{{ item.count }}</span> </div> <img class="thumb img-fluid" :data-src="item.image" :src="item.image" :alt="item.name" :title="item.name"> </a> </div> <template v-if="key == '2' || key == '4' || key == '7' || key == '9'"> </div> </template> </div v-if="!(key % '5')"> </div> </template> </div>

Mã trên

Giá trị KEY = 0 và KEY = 5 cho ra KẾT QUẢ còn lại KEY = 1 2 3 4 6 7 8 9 không ra kết quả

v-if="key == '1' || key == '3' || key == '6' || key == '8'" và v-if="key == '2' || key == '4' || key == '7' || key == '9'" không hoạt động được

Bình luận

Bài viết tương tự

- vừa được xem lúc

Tìm hiểu về Livewire trong Laravel

Giới Thiệu. Livewire là một full-stack framework cho Laravel giúp việc xây dựng các giao diện động trở nên đơn giản hơn.

0 1 218

- vừa được xem lúc

Tải cả thư viện sách lên website chỉ trong 1 nốt nhạc với Laravel!

Giới thiệu bài toán:. Sau nhiều giờ ngồi upload từng cuốn e-book lên website - 1 việc cần thiết nhưng thật sự tốn thời gian.

0 0 29

- vừa được xem lúc

DataTable và Laravel

1. Giới thiệu:.

0 0 83

- vừa được xem lúc

Hướng dẫn làm chức năng đăng ký tài khoảng bằng cách xác thực email với mã OTP giống như Facebook bằng Laravel 8x

Xin chào tất cả mọi người, mình sẽ hướng dẫn mọi người làm chức năng gửi gmail xác thực người dùng bằng mã OTP giống như Facebook bằng Laravel 8x.Bài viết này dành cho người đã từng học qua Laravel cơ

0 0 33

- vừa được xem lúc

Câu chuyện về caching trong laravel

Caching là gì, tại sao phải caching. Laravel có thể caching những gì.

0 0 53

- vừa được xem lúc

Tìm hiểu về Service Container trong Laravel

I - Service Container là gì . liên kết những thứ chúng ta cần để ứng dụng Laravel một cách trơn chu.

0 0 27