Няма описание

XMLHttpRequestEventTarget.js 2.3KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117
  1. // Copyright 2016 wkh237@github. All rights reserved.
  2. // Use of this source code is governed by a MIT-style license that can be
  3. // found in the LICENSE file.
  4. import EventTarget from './EventTarget.js'
  5. import Log from '../utils/log.js'
  6. const log = new Log('XMLHttpRequestEventTarget')
  7. log.disable()
  8. export default class XMLHttpRequestEventTarget extends EventTarget {
  9. _onabort : (e:Event) => void = () => {};
  10. _onerror : (e:Event) => void = () => {};
  11. _onload : (e:Event) => void = () => {};
  12. _onloadstart : (e:Event) => void = () => {};
  13. _onprogress : (e:Event) => void = () => {};
  14. _ontimeout : (e:Event) => void = () => {};
  15. _onloadend : (e:Event) => void = () => {};
  16. constructor() {
  17. super()
  18. log.info('constructor called')
  19. }
  20. dispatchEvent(event:string, e:Event) {
  21. super.dispatchEvent(event, e)
  22. switch(event) {
  23. case 'abort' :
  24. this._onabort(e)
  25. break;
  26. case 'error' :
  27. this._onerror(e)
  28. break;
  29. case 'load' :
  30. this._onload(e)
  31. break;
  32. case 'loadstart' :
  33. this._onloadstart(e)
  34. break;
  35. case 'loadend' :
  36. this._onloadend(e)
  37. break;
  38. case 'progress' :
  39. this._onprogress(e)
  40. break;
  41. case 'timeout' :
  42. this._ontimeout(e)
  43. break;
  44. }
  45. }
  46. set onabort(fn:(e:Event) => void) {
  47. log.info('set onabort')
  48. this._onabort = fn
  49. }
  50. get onabort() {
  51. return this._onabort
  52. }
  53. set onerror(fn:(e:Event) => void) {
  54. log.info('set onerror')
  55. this._onerror = fn
  56. }
  57. get onerror() {
  58. return this._onerror
  59. }
  60. set onload(fn:(e:Event) => void) {
  61. log.info('set onload')
  62. this._onload = fn
  63. }
  64. get onload() {
  65. return this._onload
  66. }
  67. set onloadstart(fn:(e:Event) => void) {
  68. log.info('set onloadstart')
  69. this._onloadstart = fn
  70. }
  71. get onloadstart() {
  72. return this._onloadstart
  73. }
  74. set onprogress(fn:(e:Event) => void) {
  75. log.info('set onprogress')
  76. this._onprogress = fn
  77. }
  78. get onprogress() {
  79. return this._onprogress
  80. }
  81. set ontimeout(fn:(e:Event) => void) {
  82. log.info('set ontimeout')
  83. this._ontimeout = fn
  84. }
  85. get ontimeout() {
  86. return this._ontimeout
  87. }
  88. set onloadend(fn:(e:Event) => void) {
  89. log.info('set onloadend')
  90. this._onloadend = fn
  91. }
  92. get onloadend() {
  93. return this._onloadend
  94. }
  95. }