Javascript 如何在riotjs中选择当前标记作为DOM元素

Javascript 如何在riotjs中选择当前标记作为DOM元素,javascript,riot.js,Javascript,Riot.js,有没有办法选择当前标记作为DOM元素而不使用id属性 我现在正在做的是 function addAttr(n,v){ var ta = document.getElementById(opts.id); ta.setAttribute(n,v); } 我在寻找这样的直接方式 function addAttr(n,v){ var ta = document.querySelector(this); //var ta = document.querySelector(this.ro

有没有办法选择当前标记作为DOM元素而不使用id属性

我现在正在做的是

function addAttr(n,v){
  var ta = document.getElementById(opts.id);
  ta.setAttribute(n,v);
}
我在寻找这样的直接方式

function addAttr(n,v){
  var ta = document.querySelector(this);
  //var ta = document.querySelector(this.root);
  ta.setAttribute(n,v);
}
传递
this.root
可用于jQuery,但不能用于document.querySelector()


我找到了解决办法。我在“挂载”事件中移动了代码。因此,
this.root
可用。现在我不需要查询选择器。这个.root本身工作

现在我可以直接使用

this.root.setAttribute(n,v);
我已经更新了plunker链接以供参考

this.on("mount",function(){
  if(opts.fa){
    this.root.className += " faa";
    if(opts.selectable)
      this.root.innerHTML = fa_icons[opts.fa];
    else{
      this.root.setAttribute("faicon", fa_icons[opts.fa]);
    }
  }else if(opts.text){
    this.root.innerHTML = opts.text;
  }

  if(opts.transform){
    this.root.style.transform = opts.transform;
  }
});