intro.html 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <extend name="public@base"/>
  2. <block name="css">
  3. <link rel="stylesheet" href="__TMPL__/public/assets/css/userwall.css">
  4. <style>
  5. .van-nav-bar--fixed {z-index:100;}
  6. .van-uploader,.van-uploader__wrapper,.van-uploader__input-wrapper {width:100%;}
  7. .van-nav-bar .van-icon,.van-nav-bar__text {color:white;}
  8. .van-step--horizontal .van-step__title {font-size:16px;}
  9. .van-step--horizontal .van-step__icon {font-size:16px;}
  10. .van-step__circle {width:10px;height:10px;}
  11. </style>
  12. </block>
  13. <block name="body">
  14. <!--头部-->
  15. <van-nav-bar
  16. class="bg-pink"
  17. fixed="true"
  18. >
  19. <template #title>
  20. <span style="color:white;">完善资料(2/4)</span>
  21. </template>
  22. </van-nav-bar>
  23. <div style="width:100%;height:46px;"></div>
  24. <van-steps :active="1">
  25. <van-step>选择性别</van-step>
  26. <van-step>上传头像</van-step>
  27. <van-step>基础资料</van-step>
  28. <van-step>择偶要求</van-step>
  29. </van-steps>
  30. <!--头图-->
  31. <van-uploader :max-count="1" :after-read="uploadHead">
  32. <van-image style="width:80%;display:block;margin:20px auto 0 auto;" :src="head_image"></van-image>
  33. </van-uploader>
  34. <p class="fz14 color_9" style="text-align:center;">点击图片上传头图,建议750*780像素</p>
  35. <van-field
  36. v-model="form.signature"
  37. rows="3"
  38. autosize
  39. type="textarea"
  40. maxlength="200"
  41. placeholder="请输入爱情宣言"
  42. show-word-limit
  43. style="margin-top:30px;font-size:16px;"
  44. ></van-field>
  45. <div class="tips p15 color_9">
  46. <h3 class="fz15">温馨提示:</h3>
  47. <div class="text fz13 mt5"> 请不要发布广告信息、暴力、色情信息、攻击性言论语,联系方式等违规内容。
  48. 一经发现,严肃处理。
  49. </div>
  50. </div>
  51. <div style="padding:16px;">
  52. <van-button block class="bg-pink" @click="onSubmit">下一步</van-button>
  53. </div>
  54. </block>
  55. <block name="script">
  56. <script>
  57. new Vue({
  58. el: '#app',
  59. data() {
  60. return {
  61. form: {
  62. main_image: '{$user.main_image}',
  63. main_image_thumb: '{$user.main_image_thumb}',
  64. signature: '{$user.signature}',
  65. }
  66. };
  67. },
  68. methods: {
  69. onSubmit() {
  70. if (this.form.main_image == '') {
  71. this.$toast('请上传头图');
  72. return false;
  73. }
  74. $.post("{:url('intro')}", this.form, function (json) {
  75. location.href = "{:url('profile')}";
  76. }, 'json');
  77. },
  78. uploadHead(file) {
  79. let self = this;
  80. $.post("{:url('imageUpload')}",{file:file.content,name:file.file.name},function(json){
  81. if (json.code) {
  82. self.form.main_image = json.data.main_image;
  83. self.form.main_image_thumb = json.data.main_image_thumb;
  84. self.$forceUpdate();
  85. } else {
  86. self.$toast(json.msg);
  87. }
  88. },'json')
  89. },
  90. },
  91. computed: {
  92. head_image() {
  93. return this.form.main_image ? this.form.main_image : '__TMPL__/public/assets/images/userwall/no_image.png?v=1';
  94. }
  95. },
  96. });
  97. </script>
  98. </block>