<template>
<div>
<el-breadcrumb separator-class="el-icon-arrow-right">
<el-breadcrumb-item>轮播管理</el-breadcrumb-item>
<el-breadcrumb-item>轮播列表</el-breadcrumb-item>
<el-breadcrumb-item>活动详情</el-breadcrumb-item>
</el-breadcrumb>
<el-card class="box-card">
<!-- 搜索框 -->
<el-row :gutter="20">
<el-col :span="8">
<el-input placeholder="请输入内容">
<el-button slot="append" icon="el-icon-search"></el-button>
</el-input>
</el-col>
<el-col :span="4">
<el-button type="primary" @click="addInfo">新增轮播信息</el-button>
</el-col>
</el-row>
<!-- tabble表单 -->
<el-table border style="width: 100%">
<el-table-column prop="date" label="ID" width="180"></el-table-column>
<el-table-column prop="name" label="缩略图" width="180"></el-table-column>
<el-table-column prop="address" label="链接"></el-table-column>
<el-table-column prop="address" label="描述"></el-table-column>
<el-table-column prop="address" label="显示状态"></el-table-column>
<el-table-column prop="address" label="操作"></el-table-column>
</el-table>
</el-card>
<!-- 点击添加轮播信息 -->
<el-dialog title="新添轮播信息" :visible.sync="addDialogVisible" width="40%">
<!-- form表单 -->
<el-form label-width="100px" :model="lunBoForm" :rules="lunBoRules">
<el-form-item label="用户名" required prop="name">
<el-input v-model="lunBoForm.name"></el-input>
</el-form-item>
<el-form-item label="链接" required prop="link">
<el-input v-model="lunBoForm.link"></el-input>
</el-form-item>
<!-- 上传图片 -->
<input
class="file"
name="file"
type="file"
@change="getPic"
/>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="addDialogVisible = false">取 消</el-button>
<el-button type="primary" @click="update">确 定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import axios from "axios";
export default {
data() {
return {
page: {
pageno: 1,
pageSize: 10
},
//添加轮播信息
addDialogVisible: false,
//轮播表单
lunBoForm:{
name: '',
link:'',
},
file:"",
fileName:"",
//校验规则
lunBoRules: {
name: [
{ required: true, message: '请输入用户名', trigger: 'blur' },
{ min: 3, max: 5, message: '长度在 3 到 10 个字符', trigger: 'blur' }
],
link:[
{ required: true, message: '请输入链接', trigger: 'blur' },
]
}
};
},
methods: {
//拿到图片
getPic(e){
let File = e.target.files[0];
console.log(File)
this.file = File
},
getLunboList() {
// this.$axios
// .post("http://192.168.1.102:81/rotation/delRotation", {
// id: ""
// })
// .then(function(response) {
// console.log(response);
// })
// .catch(function(error) {
// console.log(error);
// });
},
//上传图片 //提交按钮
update() {
// let file = e.target.files[0];
let param = new FormData(); //创建form对象
param.append('file',this.file);//通过append向form对象添加数据
param.append('name',this.lunBoForm.name); //添加form表单中其他数据
param.append('link',this.lunBoForm.link); //添加form表单中其他数据
// console.log(param.get("file")); //FormData私有类对象,访问不到,可以通过get判断值是否传进去
let config = {
headers: { "Content-Type": "multipart/form-data" }
}; //添加请求头
axios
.post("http://192.168.1.103:81/rotation/addrotation",param, config)
.then(response => {
console.log(response.data);
}).catch(err=>{
console.log(err)
});
//关闭Dialog对话框
this.addDialogVisible = false;
},
//添加新增轮播
addInfo() {
this.addDialogVisible = true;
}
},
mounted() {
this.getLunboList();
}
};
</script>
<style lang="less" scoped>
</style>