【问题标题】:How can I add success message after button is clicked?单击按钮后如何添加成功消息?
【发布时间】:2021-05-09 19:50:39
【问题描述】:
<template>
    
<div>
  <div class="form-group">
    <label for="name">Name</label>
    <input type="text" class="form-control" v-model="firstName"  placeholder="Enter your name">
  </div>
    
  <div class="form-group">
    <label for="lastName">Last name</label>
    <input type="text" class="form-control" v-model="lastName" placeholder="Enter your last name">
  </div>
    
    <div class="form-group">
    <label for="message">Type Your message</label>
    <textarea class="form-control" v-model="message" rows="3"></textarea>
  </div>
    
  <div class="form-group form-check" v-for="number in numbers" :key="number">
    <input type="checkbox" :value="number.Broj" v-model="checkedNumbers">
    <label class="form-check-label" >{{number.Broj}}</label>
  </div>
    <button type="submit" class="btn btn-primary" @click="sendMessage">Send message</button>
</div>
</template>
    
<script>
  import http from "../http-common.js";
  import userServices from "../services/userServices.js";
  export default {
    data()
    {
      return {
        firstName: null,
        lastName: null,
        message: null,
        numbers: "",
        checkedNumbers: [], 
      }; 
    },
    methods:
    {
      async sendMessage()
      {
        await http.post("/message", {firstName: this.firstName, lastName: this.lastName, message: this.message, numbers: this.checkedNumbers});
        this.$data.firstName = "",
        this.$data.lastName = "",
        this.$data.checkedNumbers = [],
        this.$data.message = "";
      },
    
      retrieveNumbers() {
        userServices.getNumbers().then(response => {
          this.numbers = response.data;
          console.log(response.data);
        })
        .catch(e => {
          console.log(e);
        });
      }
    
    },
    created() {
      this.retrieveNumbers();
    }
  }
    
</script>

点击发送消息按钮后如何向用户添加成功消息?例如“消息已发送”

我有一个完美工作的表单,我可以将数据插入数据库并通过表单将数据写入文本文件。表单验证后使用 axios。用户单击按钮后,我只是在努力显示成功消息。

谢谢

【问题讨论】:

  • 你可以使用一些第三方组件来显示toast消息

标签: javascript node.js vue.js


【解决方案1】:

你可以在 Promise 返回后做一些事情,比如:

await http.post("/message", {firstName: this.firstName, lastName: this.lastName, message: this.message, numbers: this.checkedNumbers}).then((response) => {
  // Do something with the response
})

然后,您可以从 SweetAlert documentation 弹出一个带有您要显示的消息的 swal。

【讨论】:

  • 部分对响应做一些事情,这里应该是什么?
  • 如果你使用 SweetAlert2,你可能会触发这样的事情:Swal.fire( 'You clicked the button!', 'success' )
猜你喜欢
  • 1970-01-01
  • 2018-03-26
  • 2020-10-03
  • 1970-01-01
  • 2018-11-19
  • 1970-01-01
  • 2020-10-07
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多