Uploader.vue 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  1. <template>
  2. <div class="loader-ctnr">
  3. <div class="loader-box">
  4. <img src="../assets/img/camera.png" id="pic">
  5. </div>
  6. <p>{{msg}}</p>
  7. </div>
  8. </template>
  9. <script type="text/javascript">
  10. export default{
  11. props:["msg"],
  12. methods:{
  13. upLoadImg:function(obj){
  14. var file = obj.files[0];
  15. console.log(obj);console.log(file);
  16. console.log("file.size = " + file.size); //file.size 单位为byte
  17. var reader = new FileReader();
  18. //读取文件过程方法
  19. reader.onloadstart = function (e) {
  20. console.log("开始读取....");
  21. }
  22. reader.onprogress = function (e) {
  23. console.log("正在读取中....");
  24. }
  25. reader.onabort = function (e) {
  26. console.log("中断读取....");
  27. }
  28. reader.onerror = function (e) {
  29. console.log("读取异常....");
  30. }
  31. reader.onload = function (e) {
  32. console.log("成功读取....");
  33. var img = document.getElementById("pic");
  34. img.src = e.target.result;
  35. //或者 img.src = this.result; //e.target == this
  36. }
  37. reader.readAsDataURL(file)
  38. }
  39. }
  40. }
  41. </script>
  42. <style scoped>
  43. .loader-ctnr{
  44. display: inline-block;
  45. padding-top: 0.266525rem;
  46. padding-bottom: 0.333156rem;
  47. .loader-box{
  48. width: 1.865672rem;
  49. height: 1.865672rem;
  50. margin: 0 auto;
  51. border:2px solid #60c0ff;
  52. border-radius: 10px;
  53. line-height: 2.265672rem;
  54. img{
  55. width: 0.746269rem;
  56. }
  57. }
  58. p{
  59. font-size: 0.373134rem;
  60. margin-top: 0.199893rem;
  61. }
  62. }
  63. </style>