[英]How to access the object that used Decorator?
我想通過使用裝飾器注入一些需要來自許多組件的HTML元素。 這是我要實現的用法:
const serializedCSS = '...'; // Serialized CSS
@injectStyle(serializedCSS);
class MyComponent extends HTMLElement {
...
我想將序列化的CSS發送給Decorator,但是我找不到如何訪問“ MyComponent”類的方法,我必須訪問它自己的屬性才能創建新的樣式元素並追加為子元素。
function injectStyle(target: any) {
console.log(target);
// ??? HOW TO ACCESS THE OBJECT? ///
function f(...args:any) {
}
return f;
}
我找不到與此相關的任何解決方案。 任何建議將不勝感激!
這是我的解決方案。
export function injectStyle(css:string, ...args:any) {
return function(target:any) {
// Now I can access target object with "target"!
target.doSomething ...
...
};
}
現在,我可以使用injectStyle裝飾器,如下所示:
@injectStyle(require('./style.css'))
class App extends HTMLElement {
...
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.