index.vue 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. <template>
  2. <view :class="$tm.vx.state().tmVuetify.black?'black bk':''">
  3. <tm-menubars color="primary" title="入库" :shadow="0" :showback="true"></tm-menubars>
  4. <tm-button theme="light-green" @click="paizhao()">拍照</tm-button>
  5. </view>
  6. </template>
  7. <script>
  8. export default {
  9. data() {
  10. return {
  11. imgpath : [],
  12. tag : 0,
  13. imgbase64 : []
  14. };
  15. },
  16. onLoad() {
  17. },
  18. created() {
  19. uni.request({
  20. url: "https://jisutqybmf.market.alicloudapi.com/weather/query",
  21. method: "get",
  22. header: {
  23. 'Authorization':'APPCODE e4b9accfb1f246cb8c0766a54efe8730'
  24. },
  25. data:{
  26. city:'南京'
  27. },
  28. dataType:'json',
  29. success : function(data) {
  30. },
  31. error : function(e) {
  32. alert("网络异常,请重试");
  33. }
  34. });
  35. },
  36. methods: {
  37. paizhao(){
  38. var that=this;
  39. uni.chooseImage({ //uni官方api,用于选取本地图片
  40. count: 6, //默认9
  41. sizeType: ['original', 'compressed'], //可以指定是原图还是压缩图,默认二者都有
  42. sourceType: ['album'], //从相册选择
  43. success: function (res) {
  44. that.imgpath = res.tempFilePaths //先获得本地文件的路径列表,存储到数组
  45. console.log(that.imgpath) //注意该api会将路径转换为blob格式
  46. that.getBase64Image();
  47. }
  48. })
  49. },
  50. getBase64Image(){
  51. var that=this;
  52. console.log(" 开始转换")
  53. var that = this
  54. for(let i=0;i<that.imgpath.length;i++){
  55. var url = that.imgpath[i]
  56. getImgToBase64(url,function(dataURL){
  57. that.imgbase64.push(dataURL)
  58. that.shibie(dataURL[0])
  59. })
  60. }
  61. function getImgToBase64(url,callback){
  62. var canvas = document.createElement('canvas'),
  63. ctx = canvas.getContext('2d'),
  64. img = new Image;
  65. img.crossOrigin = 'Anonymous';
  66. img.onload = function(){
  67. canvas.height = img.height;
  68. canvas.width = img.width;
  69. ctx.drawImage(img,0,0);
  70. var dataURL = canvas.toDataURL('image/png');
  71. callback(dataURL);
  72. canvas = null;
  73. };
  74. img.src = url;
  75. }
  76. },
  77. shibie(){
  78. var that=this;
  79. uni.request({
  80. url: 'https://dect.market.alicloudapi.com/imgdect',
  81. method : "post",
  82. header: {
  83. 'Authorization':'APPCODE e4b9accfb1f246cb8c0766a54efe8730'
  84. },
  85. data:{
  86. src:that.imgbase64[0]
  87. },
  88. dataType:'json',
  89. success : function(data) {
  90. },
  91. error : function(e) {
  92. alert("网络异常,请重试");
  93. }
  94. });
  95. }
  96. },
  97. }
  98. </script>
  99. <style lang="scss">
  100. </style>