index.vue 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. <template>
  2. <view class="follow_wrap">
  3. <u-navbar placeholder :autoBack="true" title="添加跟进记录" @rightClick="handleNavSaveClick">
  4. <view class="u-nav-slot" slot="right">
  5. 保存
  6. </view>
  7. </u-navbar>
  8. <view class="form_wrap">
  9. <u--form labelPosition="left" labelWidth="80" :model="form" :rules="rules" ref="form" class="form_wrap">
  10. <u-form-item label="跟进内容" prop="content">
  11. <u--textarea v-model="form.content" placeholder="请输入内容" count confirmType="done" maxlength="500">
  12. </u--textarea>
  13. </u-form-item>
  14. </u--form>
  15. </view>
  16. <!-- <drag-button :isDock="true" /> -->
  17. </view>
  18. </template>
  19. <script>
  20. export default {
  21. data() {
  22. return {
  23. rules: {
  24. 'content': {
  25. type: 'string',
  26. required: true,
  27. message: '请输入内容',
  28. trigger: ['blur', 'change']
  29. },
  30. },
  31. form: {
  32. clueId : undefined,
  33. content: ''
  34. },
  35. }
  36. },
  37. methods: {
  38. handleNavSaveClick() {
  39. this.$refs.form.validate().then(async () => {
  40. await uni.$u.api.addClueFollow(this.form);
  41. uni.$u.toast("保存成功");
  42. this.timer = setTimeout(()=>{
  43. uni.$emit('addFollowSuccess');
  44. uni.navigateBack();
  45. clearTimeout(this.timer);
  46. },1000)
  47. })
  48. },
  49. },
  50. onLoad(option) {
  51. this.form.clueId = option.clueId;
  52. }
  53. }
  54. </script>
  55. <style lang="scss" scoped>
  56. .form_wrap {
  57. background-color: #fff;
  58. margin: 20rpx 0;
  59. .form_wrap {
  60. ::v-deep .u-form-item__body {
  61. padding: 20rpx 40rpx;
  62. }
  63. }
  64. }
  65. </style>