345de8fca5
This would make sure we are referencing correct symbol to check if it has value Fixes #4239
48 lines
1.6 KiB
TypeScript
48 lines
1.6 KiB
TypeScript
//// [tests/cases/conformance/decorators/decoratorMetadata.ts] ////
|
|
|
|
//// [service.ts]
|
|
export default class Service {
|
|
}
|
|
//// [component.ts]
|
|
import Service from "./service";
|
|
|
|
declare var decorator: any;
|
|
|
|
@decorator
|
|
class MyComponent {
|
|
constructor(public Service: Service) {
|
|
}
|
|
}
|
|
|
|
//// [service.js]
|
|
var Service = (function () {
|
|
function Service() {
|
|
}
|
|
return Service;
|
|
})();
|
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
exports.default = Service;
|
|
//// [component.js]
|
|
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
|
|
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") return Reflect.decorate(decorators, target, key, desc);
|
|
switch (arguments.length) {
|
|
case 2: return decorators.reduceRight(function(o, d) { return (d && d(o)) || o; }, target);
|
|
case 3: return decorators.reduceRight(function(o, d) { return (d && d(target, key)), void 0; }, void 0);
|
|
case 4: return decorators.reduceRight(function(o, d) { return (d && d(target, key, o)) || o; }, desc);
|
|
}
|
|
};
|
|
var __metadata = (this && this.__metadata) || function (k, v) {
|
|
if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
|
|
};
|
|
var service_1 = require("./service");
|
|
var MyComponent = (function () {
|
|
function MyComponent(Service) {
|
|
this.Service = Service;
|
|
}
|
|
MyComponent = __decorate([
|
|
decorator,
|
|
__metadata('design:paramtypes', [service_1.default])
|
|
], MyComponent);
|
|
return MyComponent;
|
|
})();
|