有沒有人有任何關於如何在nodejs中使用反射元數據的例子?我也使用原子打字稿。我通過npm使用它下載,但我不斷收到隨機錯誤。我看到反思是一個空白的對象。只是尋找一個如何將其納入模塊或節點項目的例子。nodejs中的Typescript反射元數據
3
A
回答
1
在[email protected]+,你可以使用它像這樣:
npm i -S reflect-metadata
npm i -D @types/reflect-metadata
// your.ts
import 'reflect-metadata'
Reflect.getMetadata(...)
Reflect.metadata(...)
3
當我面臨同樣的問題,沒有任何工作,我打開node_modules中的Reflect.ts文件。最後,你可以看到它在全球層面上勾起了反思。
// hook global Reflect
(function(__global: any) {
if (typeof __global.Reflect !== "undefined") {
if (__global.Reflect !== Reflect) {
for (var p in Reflect) {
__global.Reflect[p] = (<any>Reflect)[p];
}
}
}
else {
__global.Reflect = Reflect;
}
})(
typeof window !== "undefined" ? window :
typeof WorkerGlobalScope !== "undefined" ? self :
typeof global !== "undefined" ? global :
Function("return this;")());
因此,我從所有其他文件中刪除了需要反射元數據,並將其移至主文件。
require('reflect-metadata/Reflect');
現在,我可以用它所有的模塊內(無需反映的元數據)與下面的語法,
(<any>global).Reflect.getMetadata("design:type", target, key); // In Typescript
編輯: 我們還可以引用反映,metadata.d.ts文件來自node_modules,然後直接使用API。
/// <reference path="../../node_modules/reflect-metadata/reflect-metadata.d.ts" />
Reflect.getMetadata("design:type", target, propertyKey);
+0
哇,這真的很糟糕。不是你的答案 - 但是,所有的一切es6-import打字稿都是無緣無故的巨大痛苦。沒有人可以使用相同的模式。 –
相關問題
- 1. C#好友類/元數據和反射
- 2. 模塊問題中的TypeScript元數據
- 3. TypeScript - 傳遞一個類作爲參數,並反射
- 4. C++中的元類和反射
- 5. 使用反射從元數據類獲取屬性屬性
- 6. 什麼是反射元數據及其用途
- 7. Angular2未能更新到RC7 - zone.js和反射元數據
- 8. GLSL中的反射映射
- 9. Java反射和元編程
- 10. Restkit元數據不映射
- 11. 部署Typescript NodeJS服務器
- 12. TypeScript + NodeJS readline屬性丟失
- 13. 反射超載。爲反射可變參數值填充反射數組方法
- 14. asp.net中的反射
- 15. Java中的反射
- 16. Android中的反射?
- 17. python中的反射
- 18. 如何在Typescript中聲明NodeJs模塊?
- 19. 檢索數據LINQ與反射
- 20. nodejs中的圖數據庫
- 21. Java中的數組的反射
- 22. 如何在Aurelia CLI項目中引用和導入反射元數據?
- 23. 使用SQLAlchemy在基於MSSQL反射元數據中創建表格
- 24. 如何獲得HashSet的反射元素?
- 25. 在typescript和angular1中的映射
- 26. 沒有反應的TypeScript JSX
- 27. JavaScript的數組反射
- 28. NodeJS違反Promise
- 29. C#中的反射和參數#
- 30. GAA的JPA註釋/元數據映射
沒有下面提供的答案是正確的答案?你能否就你想要達到的目標添加更多細節,以及爲什麼下面的答案不能滿足你的需求? – eAbi