聚合物1.0纸单选按钮不工作在流星

Polymer 1.0 paper-radio-button does not work in Meteor

本文关键字:工作 流星 单选按钮 聚合物      更新时间:2023-09-26

我用流星和聚合物创建了一个简单的形式。不完全确定如何正确实现聚合物的paper-radio-button。在页面上,所有的无线电都被检查了。下面是我的设置:

流星服务器:

Meteor.publish('jobTypes', function(){
  return JobTypes.find();
});

//when server starts up, insert these records:
if (JobTypes.find().count() === 0) {
  //Job Types
  JobTypes.insert({
    name: 'Full Time',
    isChecked: false
  });
  JobTypes.insert({
    name: 'Part Time',
    isChecked: false
  });
  JobTypes.insert({
    name: 'Contract',
    isChecked: false
  });
  JobTypes.insert({
    name: 'Freelance',
    isChecked: false
  });
  JobTypes.insert({
    name: 'Intern',
    isChecked: false
  });
}
客户:

Meteor.subscribe('jobTypes');
HTML:

<paper-radio-group selected="small">
  {{#each jobTypes}}
    <paper-radio-button name={{name}} {{isChecked}}>{{name}}</paper-radio-button>
  {{/each}}
</paper-radio-group>

辅助js:

isChecked: function() {
    return this.name ? 'checked' : '';
  }

事件js:

'click [name=name]' : function(e, tmpl) {
        var id = this._id;
        var checked = tmpl.find('paper-radio-button').checked;
        JobTypes.update({_id: id}, {
          $set: {
            isChecked: checked
          }
        });

我的问题是,一切都检查当我查看html页面。此外,数据库没有更新。我的代码有bug吗?

就发生在我身上,最简单的解决方案是:

"click .radio-red": function(event,template) {
    template.$(".radio-green").attr("checked",false);
  },
  "click .radio-green": function(event,template) {
    template.$(".radio-red").attr("checked",false);
  }

这是由流星触发的聚合物组件中的一个bug,它只发生在我从隐藏加载组件时。display: none或由流星模板(空格)呈现。这个bug已经在github中列出了