【问题标题】:Polymer 1.0 paper-radio-button does not work in MeteorPolymer 1.0 纸张单选按钮在 Meteor 中不起作用
【发布时间】:2015-09-24 01:27:08
【问题描述】:

我正在用流星和聚合物创建一个简单的形式。不完全确定如何正确实施聚合物的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 页面时会检查所有内容。数据库也没有更新。我的代码中有错误吗?

【问题讨论】:

  • 应该是这个:name={{name}} 还是这个:name="{{name}}"?不确定 Meteor 中关于 HTML 元素属性的数据绑定是如何工作的。

标签: javascript meteor polymer meteor-blaze polymer-1.0


【解决方案1】:

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

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

这是由流星触发的 Polymer 组件中的一个错误,它仅在从 隐藏加载组件时发生在我身上。显示:无或由流星模板(空格键)呈现。此错误已在 github 中列出。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-08-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多