index.js 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140
  1. // index.js
  2. // 获取应用实例
  3. const app = getApp()
  4. import {
  5. VueLikePage
  6. } from '../../utils/page'
  7. import { CDN_URL,API_BASE_URL,TYPE } from '../../config/index'
  8. import {isPhoneX} from './../../utils/tools'
  9. import Router from '../../utils/routes'
  10. VueLikePage([],{
  11. data:{
  12. cdn_url:CDN_URL,
  13. isBackCamera:false,
  14. current:'1',
  15. currentImg:'',
  16. isSelect: false
  17. },
  18. methods:{
  19. onLoad:function (options) {
  20. let {id} = options
  21. this.setData({
  22. current:id
  23. })
  24. isPhoneX().then(res => {
  25. this.setData({
  26. isIphoneX: res
  27. })
  28. })
  29. },
  30. onShow:function () {
  31. // this.reTake()
  32. },
  33. loadcompele(){
  34. this.setData({
  35. loadCompele: true
  36. })
  37. },
  38. back(){
  39. if (this.data.currentImg) {
  40. this.reTake()
  41. }
  42. else{
  43. wx.navigateBack()
  44. }
  45. },
  46. changPosition(){
  47. this.setData({
  48. isBackCamera:!this.data.isBackCamera
  49. })
  50. },
  51. reTake(){
  52. this.setData({
  53. currentImg:'',
  54. isSelect:false
  55. })
  56. },
  57. submit(){
  58. wx.showLoading({
  59. title: '处理中…',
  60. mask:true
  61. });
  62. wx.uploadFile({
  63. url: `${API_BASE_URL}/api/uploadFaceSwap/${TYPE[this.data.current]}`, //仅为示例,非真实的接口地址
  64. filePath: this.data.currentImg,
  65. name: 'file',
  66. success: (res)=>{
  67. let data = JSON.parse(res.data)
  68. if (data.code==0) {
  69. this.setData({
  70. work:data.msg
  71. })
  72. Router.push({
  73. url: 'work',
  74. query: {
  75. vr_link:data.msg,
  76. id: this.data.current
  77. }
  78. })
  79. }
  80. else{
  81. wx.showModal({
  82. title: '无法识别人脸,请正对摄像头拍照',
  83. showCancel:false
  84. });
  85. }
  86. },
  87. fail:()=>{
  88. wx.showModal({
  89. title: '无法识别人脸,请正对摄像头拍照',
  90. showCancel:false
  91. });
  92. },
  93. complete(){
  94. wx.hideLoading();
  95. }
  96. })
  97. },
  98. selectImage(){
  99. wx.chooseImage({
  100. sourceType:["album"],
  101. count: 1,
  102. sizeType: ['original', 'compressed'],
  103. success:res =>{
  104. console.log(res)
  105. this.setData({
  106. currentImg: res.tempFilePaths[0],
  107. isSelect:true
  108. })
  109. console.log(this.data.currentImg,this.data.isSelect)
  110. },
  111. fail:error =>{
  112. console.log(error);
  113. }
  114. })
  115. },
  116. takePhoto() {
  117. const ctx = wx.createCameraContext()
  118. ctx.takePhoto({
  119. quality: 'high',
  120. success: (res) => {
  121. this.setData({
  122. currentImg: res.tempImagePath,
  123. isSelect:false
  124. })
  125. }
  126. })
  127. }
  128. }
  129. })