Skip to content

Container.bind doesn't work in IE #12

@drwatson1

Description

@drwatson1

... but works fine in Edge and Chrome.

I've created a repo to reproduce the problem here: https://github.com/drwatson1/typescript-ioc-example

If you'll try to open the example in IE you'll see these errors:

InjectorHanlder.getConstructorFromType
D:\GitHub\typescript-ioc-example\node_modules\typescript-ioc\es5.js:288
  285 |                 return typeConstructor;
  286 |             }
  287 |         }
> 288 |         throw TypeError('Can not identify the base Type for requested target');
  289 |     };
  290 |     return InjectorHanlder;
  291 | }());

IoCContainer.isBound
D:\GitHub\typescript-ioc-example\node_modules\typescript-ioc\es5.js:91
  88 | }
  89 | IoCContainer.isBound = function (source) {
  90 |     checkType(source);
> 91 |     var baseSource = InjectorHanlder.getConstructorFromType(source);
  92 |     var config = IoCContainer.bindings.get(baseSource);
  93 |     return (!!config);
  94 | };

Container.bind
D:\GitHub\typescript-ioc-example\node_modules\typescript-ioc\es5.js:74
  71 | function Container() {
  72 | }
  73 | Container.bind = function (source) {
> 74 |     if (!IoCContainer.isBound(source)) {
  75 |         AutoWired(source);
  76 |         return IoCContainer.bind(source).to(source);
  77 |     }

Anonymous function
D:\GitHub\typescript-ioc-example\src\ioc.ts:14
  11 | /// 
  12 | const Container = require('typescript-ioc/es5.js').Container;
  13 | 
> 14 | Container.bind(SomeService).to(SomeServiceImpl);
  15 | 
  16 | export {
  17 |     SomeService,

... and so on.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions