首页 > 其他分享 >复用对评论和对文章回复的弹层 popup- vant2

复用对评论和对文章回复的弹层 popup- vant2

时间:2022-10-17 11:26:34浏览次数:50  
标签:none popup color 弹层 32px padding vant2 post message

 

基本样式:

ps:当message 即输入的内容的长度为 0 的时候,按钮禁止使用 ;

<template>
  <div class="comment-post">
    <van-field
      class="post-field"
      v-model="message"
      rows="2"
      autosize
      type="textarea"
      maxlength="50"
      placeholder="请输入留言"
      show-word-limit
    />
    <van-button class="post-btn">发布</van-button>
  </div>
</template>

<script>
export default {
  name: "CommentPost",
  data() {
    return {
      message: "",
    };
  },
  computed: {},
  watch: {},
  created() {},
  mounted() {},
  methods: {},
};
</script>

<style scoped lang="less">
.comment-post {
  display: flex;
  align-items: center;
  padding: 32px 0 32px 32px;
  .post-field {
    background-color: #f5f7f9;
  }
  .post-btn {
    width: 150px;
    border: none;
    padding: 0;
    color: #6ba3d8;
    &::before {
      display: none;
    }
  }
}
</style>

父组件位置控制 popup 显示 :对文章评论,传 文章的 id ;

    <!-- --------------对文章进行评论 START--------------------- -->
    <van-popup v-model="isPostShow" position="bottom">
      <!-- 传 文章的 id -->
      <commentPost :target-id="articleInfo.art_id" />
    </van-popup>
    <!-- --------------对文章进行评论 END--------------------- -->

 子组件实现接口发布评论:

<template>
  <div class="comment-post">
    <van-field
      class="post-field"
      v-model="message"
      rows="2"
      autosize
      type="textarea"
      maxlength="50"
      placeholder="请输入留言"
      show-word-limit
    />
    <van-button
      :disabled="message.length === 0"
      class="post-btn"
      @click="submit"
      >发布</van-button
    >
  </div>
</template>

<script>
import { addCommentApi } from "@/api/Article";
export default {
  name: "CommentPost",
  props: {
    // 目标文章的 id 或者 评论的 id
    targetId: {
      type: [String, Number],
      required: true,
    },
  },
  data() {
    return {
      message: "",
    };
  },
  methods: {
    async submit() {
      if (!this.$store.state.user) return this.$toast.fail("’请登录才可以操作");
      try {
        // 发起请求
        await addCommentApi({
          target: this.targetId,
          content: this.message,
          art_id: null,
        });
      } catch (error) {
        console.log(error);
      }
    },
  },
};
</script>

<style scoped lang="less">
.comment-post {
  display: flex;
  align-items: center;
  padding: 32px 0 32px 32px;
  .post-field {
    background-color: #f5f7f9;
  }
  .post-btn {
    width: 150px;
    border: none;
    padding: 0;
    color: #6ba3d8;
    &::before {
      display: none;
    }
  }
}
</style>

 

标签:none,popup,color,弹层,32px,padding,vant2,post,message
From: https://www.cnblogs.com/zhulongxu/p/16798403.html

相关文章

  • vant2 List 组件 下拉加载 onLoad
    ps:loadingfinishedonLoad两个变量一个函数;asynconLoad(){console.log("onload");//异步更新数据//setTimeout仅做示例,真实场景中一般为......
  • delphi 利用TPopupMenu做一个更换主题的功能
    效果图:核心代码:useVcl.Themes;procedureTForm1.FormCreate(Sender:TObject);vari:integer;popItem:TMenuItem;begin//动态生成右键菜单与绑定事件......
  • vue实现Popup弹窗
     1.首先我们新建一个Popup.vue,这个组件有一个关闭按钮。这个组件十子组件传值个父组件,通过$emit发送值给父组件。     2.父组件导入使用组件,定义点击事件......
  • WPF 已知问题 Popup 吃掉 PreviewMouseDown 事件
    在WPF中,使用Popup也许会看到PreviewMouseDown事件被吃掉因为PreviewMouseDown是RoutingStrategy.Direct路由事件,不能在多个视觉树使用,在设置Popup点击界面St......
  • WPF 已知问题 Popup 失焦后导致 ListBox 无法用 MouseWheel 滚动问题和解决方法
    本文记录在Popup失焦后导致ListBox无法用MouseWheel滚动问题原因:Popup虽然是个完整独立的窗体,但它的激活要靠它的“父窗口”间接来激活,这里之所以说是“父窗口”,是......
  • [Jetpack Compose] popUpTo 的一些理解
    开发应用时遇到一个需求:无论处于哪个页面,按返回键时都弹出退出应用的提示。我用了BackHandler处理返回事件,发现只有处于主页时才可触发回调,于是思考应该是导航相关的问......
  • DataGrid中使用PopupBox
    1.效果图2.实现TestView.xaml<DataGridItemsSource="{BindingItemsSource}"CanUserAddRows="False"AutoGenerateColumns="False">......
  • delphi 做一个动态PopupMenu菜单
    效果要求:点击树形结构不同的行,弹出不一样的下拉菜单窗体设计:  数据库设计: 实际效果: 核心代码:procedureTForm1.PopupMenu1Popup(Sender:TObject);......
  • WDA学习(21):WDA Popup,Message,Focus
    1.14WDAPopup,Message,FocusWDA测试Popup,Message,光标Focus功能。1.创建Component;COMPONENTCONTROLLER页签Context页签:创建ContextNode:MESSAGE;创建Attribute:MSG......