Data binding 将聚合物纸张下拉菜单绑定到本地存储 诚然,这个看似愚蠢的问题。。。而且。。。 在任何人匆忙回答“RTFM”之前,我还没有完全理解它——数据绑定。

Data binding 将聚合物纸张下拉菜单绑定到本地存储 诚然,这个看似愚蠢的问题。。。而且。。。 在任何人匆忙回答“RTFM”之前,我还没有完全理解它——数据绑定。,data-binding,drop-down-menu,polymer,web-component,paper-elements,Data Binding,Drop Down Menu,Polymer,Web Component,Paper Elements,所以,我得到了一种形式,它实际上是一个由输入和诸如此类的东西组成的组件,也是一个核心localstorage元素。我已经成功地在会话之间保存了其他输入的值,但是我在纸张下拉菜单上变得模糊。陷入僵局 我要做的是使用标签作为显示值,当机器中的机器位运行时,我希望所选的纸张项目反映本地存储(标签)的值 哦,这是翡翠的,顺便说一句。下面是它的外观: //- JADE /** Stuff that works: **/ core-localstorage(id='storage', nam

所以,我得到了一种形式,它实际上是一个由输入和诸如此类的东西组成的组件,也是一个
核心localstorage
元素。我已经成功地在会话之间保存了其他输入的值,但是我在
纸张下拉菜单上变得模糊。陷入僵局

我要做的是使用
标签
作为显示值,当机器中的机器
位运行时,我希望所选的
纸张项目
反映本地存储(标签)的值

哦,这是翡翠的,顺便说一句。下面是它的外观:

//- JADE

  /** Stuff that works: **/

    core-localstorage(id='storage', name='vbms-user-settings', value='{{settings}}')

    .subhead General
    paper-input(floatingLabel, label='Username', inputValue='{{settings.username}}', on-change='{{updateStorage}}')
    paper-input(floatingLabel, label='Password', inputValue='{{settings.password}}', on-change='{{updateStorage}}', type='password')

    paper-checkbox#vpn_gui_toggle.accent(label='Run Headless', checked, style='margin-right: 16px;')

  /** The confusing input **/

    paper-dropdown-menu#vm_dropdown(valueattr='label', on-core-select='{{updateDefaultVM}}')
        template(repeat="{{machine in machines}}")
            paper-item(label="{{machine.name}}")
这里有一些js。。。这很好用;我试图用“教条式”的方式做事。 有人能给我一个最简单的解决方法吗


提前谢谢

我认为推荐的使用
的方法是,根据

如果您使用的是该设置,那么现在就有了一个,它继承自。从
继承的内容可以使用
selected
属性来控制选择哪个项目。但是
默认情况下会检查它所包含的任何项目是否有一个
名称
属性,该属性的值与所选的
值匹配,因此我们还需要将
名称
属性添加到所有

不依赖于从
加载值的简单操作的最终结果如下所示。如果从
加载初始值,而不是硬编码,则应该能够执行类似的操作


聚合物演示
糕点菜单
{{糕点}
var pageTemplate=document.querySelector(“#页面模板”);
pageTemplate.Pasteries=[
“羊角面包”,
“甜甜圈”,
“金融家”,
“玛德琳”
];
//将此值设置为初始选定项的所需值。它的值可以从localStorage加载。
pageTemplate.initiallySelected=‘融资人’;

回答得很好!我读到的答案不是为了锻炼肌肉,而是为了教书。非常感谢,现在完全有道理了+1.
    /*\  JS 
    |*| ...blah blah polymer jank... 
    \*/ 

    objectToStorage: function(obj) {
        this.$.storage.value=obj;
        this.$.storage.save();
    },
    updateStorage: function() {
        this.objectToStorage(this.settings);
    },
    updateDefaultVM: function() {}