帮我写一个文件列表,它包含文件名称,文件名称下面是文件大小,最右边是有二个按钮功能,一个是刷新,一个是删除按钮,使用Vue来实现
时间: 2024-02-12 12:02:56 浏览: 50
好的,这里是一个使用Vue.js实现的文件列表,包含文件名称、文件大小和两个按钮(刷新和删除):
```html
<!DOCTYPE html>
<html>
<head>
<title>文件列表</title>
<script src="https://cdn.jsdelivr.net/npm/vue"></script>
<style>
table {
border-collapse: collapse;
width: 100%;
}
th, td {
text-align: left;
padding: 8px;
border-bottom: 1px solid #ddd;
}
tr:hover {
background-color: #f5f5f5;
}
th {
background-color: #4CAF50;
color: white;
}
.btn {
background-color: #4CAF50;
border: none;
color: white;
padding: 8px 16px;
text-align: center;
text-decoration: none;
display: inline-block;
border-radius: 4px;
cursor: pointer;
}
.btn:hover {
background-color: #3e8e41;
}
.btn-delete {
background-color: #f44336;
}
.btn-delete:hover {
background-color: #da190b;
}
</style>
</head>
<body>
<div id="app">
<table>
<thead>
<tr>
<th>文件名称</th>
<th>文件大小</th>
<th>操作</th>
</tr>
</thead>
<tbody>
<tr v-for="(file, index) in files" :key="index">
<td>{{ file.name }}</td>
<td>{{ file.size }}</td>
<td>
<button class="btn" @click="refresh(index)">刷新</button>
<button class="btn btn-delete" @click="deleteFile(index)">删除</button>
</td>
</tr>
</tbody>
</table>
</div>
<script>
var app = new Vue({
el: '#app',
data: {
files: [
{ name: '文件1', size: '10 MB' },
{ name: '文件2', size: '5 MB' },
{ name: '文件3', size: '3 MB' }
]
},
methods: {
refresh: function(index) {
// 刷新文件
console.log('刷新文件:' + this.files[index].name);
},
deleteFile: function(index) {
// 删除文件
console.log('删除文件:' + this.files[index].name);
this.files.splice(index, 1);
}
}
})
</script>
</body>
</html>
```
在这个例子中,我们使用了Vue.js来实现文件列表。我们使用一个数组来存储文件列表,然后使用v-for指令来循环显示每个文件。我们还定义了两个方法(refresh和deleteFile),用于刷新和删除文件。在HTML中,我们使用v-bind指令来绑定属性,使用v-on指令来绑定事件。
阅读全文