EditArticleForm.vue 3.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <template>
  2. <div id="edit-article-form-box">
  3. <el-dialog
  4. title="编辑分类"
  5. :visible.sync="centerDialogVisible"
  6. width="1000px"
  7. center>
  8. <el-form label-width="90px" class="clearfix" :model="form" ref="acticleform" :rules="rules">
  9. <el-row :span=20>
  10. <el-form-item label="分类名称:" required prop="name">
  11. <el-input v-model="form.name"></el-input>
  12. </el-form-item>
  13. </el-row>
  14. <el-row :span=20>
  15. <el-form-item label="分类描述:" required prop="summary">
  16. <div style="margin: 10px 0;"></div>
  17. <el-input
  18. type="textarea"
  19. :autosize="{minRows: 2, maxRows: 4}"
  20. v-model="form.summary">
  21. </el-input>
  22. </el-form-item>
  23. </el-row>
  24. <el-row :span=20>
  25. <el-form-item label="排序" required prop="order">
  26. <el-input v-model="form.order"></el-input>
  27. </el-form-item>
  28. </el-row>
  29. </el-form>
  30. <span slot="footer" class="dialog-footer">
  31. <el-button
  32. type="primary"
  33. @click="submitForm('acticleform')">保存
  34. </el-button>
  35. <el-button @click="centerDialogVisible = false">取消</el-button>
  36. </span>
  37. </el-dialog>
  38. </div>
  39. </template>
  40. <script>
  41. import { EditArticleCategory } from '@/api/act/submitinfo'
  42. export default {
  43. name: "EditArticleForm",
  44. props:{
  45. form:{
  46. name:'',
  47. summary:'',
  48. order:'',
  49. id:0,
  50. },
  51. artilceIndex:{
  52. type:Number,
  53. default:-1,
  54. },
  55. articsData:{
  56. type: Array,
  57. default: function () {
  58. return [];
  59. }
  60. }
  61. },
  62. data(){
  63. return {
  64. centerDialogVisible:false,
  65. rules: {
  66. name: [{required: true, message: "请填写分类名称",},],
  67. summary: [{required: true,message:"请填写分类描述"}],
  68. order: [{required: true,message:"请填写排序"}]
  69. },
  70. }
  71. },
  72. methods:{
  73. open:function(){
  74. this.centerDialogVisible = true;
  75. },
  76. resetForm(formName) {
  77. if (typeof(this.$refs[formName]) !='undefined') {
  78. this.$refs[formName].resetFields();
  79. }
  80. },
  81. submitForm(forname){
  82. this.$refs[forname].validate((valid)=>{
  83. if(valid){
  84. var order = this.form.order
  85. var ord = parseInt(order)
  86. this.form.order = ord
  87. EditArticleCategory(this.form.id,this.form).then(response=>{
  88. var res = response.data;
  89. console.log("返回响应",res.state)
  90. if(res.state ===1 ){
  91. var categorys = res.data.category;
  92. console.log("categorys是什么",categorys.name)
  93. this.articsData[this.artilceIndex].name = categorys.name;
  94. this.articsData[this.artilceIndex].summary = categorys.summary;
  95. this.articsData[this.artilceIndex].order = categorys.order;
  96. this.centerDialogVisible = false;
  97. this.$message.success("编辑文章分类成功");
  98. }
  99. })
  100. }
  101. })
  102. },
  103. }
  104. }
  105. </script>
  106. <style scoped>
  107. </style>