聚合物下拉菜单-通过Ajax填充吗?

用户

我正在使用Polymer的0.5.1版本,并尝试创建自己的Web组件。首先尝试创建一个选择器对象,该对象通过ajax远程填充选项。我在网上找到的所有示例都使用硬编码列表。但是,我的远程选项在下拉菜单的外部(作为基本列表的右侧)呈现-我怀疑是因为paper-dropdown-menu返回ajax数据后,该项不会自行重新呈现。如何强制刷新/重新渲染嵌入式paper-dropdown-menu元素?或者,我应该如何使用远程数据和纸张下拉菜单?

我查看了文档,但数据绑定似乎是自动的,并且我无法在Chrome开发工具中找到刷新方法。我在控制台中没有收到任何错误,它看起来很有趣,而且从未崩溃。on-core-select当我选择一个项目时,方法被触发,因此数据似乎绑定正确。

我的元素:

<link rel="import" href="../bower_components/polymer/polymer.html">
<link rel="import" href="../bower_components/paper-dropdown-menu/paper-dropdown-menu.html">
<link rel="import" href="../bower_components/core-selector/core-selector.html">
<link rel="import" href="../bower_components/core-ajax/core-ajax.html">
<link rel="import" href="../bower_components/core-signals/core-signals.html">
<link rel="import" href="../elements/custom-selector-item.html">

<polymer-element name="custom-selector" attributes="host objectivebanks">
    <template>
        <template if="{{objectivebanks.length == 0}}">
            <core-ajax auto url="https://{{host}}/objectivebanks" on-core-response="{{updateBankList}}" on-core-error="{{onError}}"></core-ajax>
        </template>
        <paper-dropdown-menu label="Objective Banks" on-core-select="{{publishBankSelect}}">
            <paper-dropdown class="dropdown">
                <core-selector class="menu">
                    <template repeat="{{bank in objectivebanks}}">
                        <custom-selector-item name="{{bank.displayName}}" myId="{{bank.id}}">
                        </custom-selector-item>
                    </template>
                </core-selector>
            </paper-dropdown>
        </paper-dropdown-menu>
    </template>
    <script>
        Polymer('custom-selector', {
            ready: function () {
                this.host = this.host || 'example.com';
                this.objectivebanks = this.objectivebanks || [];
            },
            onError: function (e, resp) {
                console.log('error!: ' + resp.response);
            },
            publishBankSelect: function (e, detail, sender) {
                if (detail.isSelected) {
                    this.fire('core-signal', {
                        'name'  : "bankselected",
                        'data'  : detail.item
                    });
                }
            },
            updateBankList: function (e, resp) {
                console.log('here');
                this.objectivebanks = JSON.parse(resp.response);
            }
        });
    </script>
</polymer-element>

==========================================

更新1

根据Mohammad的建议,我将我的Polymer()代码更新为以下代码(仍然无法正常工作):

Polymer('custom-selector', {
        ready: function () {
            this.host = this.host || 'example.com';
        },
        created: function () {
            this.objectivebanks = this.objectivebanks || [];
        },
        onError: function (e, resp) {
            console.log('error!: ' + resp.response);
        },
        publishBankSelect: function (e, detail, sender) {
            if (detail.isSelected) {
                this.fire('core-signal', {
                    'name'  : "bankselected",
                    'data'  : detail.item
                });
            }
        },
        updateBankList: function (e, resp) {
            console.log('here');
            this.objectivebanks = JSON.parse(resp.response);
        }
    });
用户

解决方案-我需要paper-dropdown.html在链接导入中添加内容,并从https://github.com/web-animations/web-animations-js安装最新的web-animations-js

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

单击按钮如何填充聚合物下拉菜单?

来自分类Dev

可以使用ngControl绑定“聚合物”纸张下拉菜单吗?

来自分类Dev

聚合物纸下拉菜单

来自分类Dev

通过AJAX填充下拉菜单失败

来自分类Dev

聚合物纸张下拉菜单获取所选项目

来自分类Dev

聚合物纸张下拉菜单的扩展高度是否受核心折叠的限制?

来自分类Dev

聚合物如何获取下拉菜单的整数值

来自分类Dev

选择的聚合物纸张下拉菜单初始设置未显示在标签中

来自分类Dev

聚合物1.0.5:选择下拉菜单中不起作用

来自分类Dev

聚合物,入门工具包1.3和下拉菜单-不起作用-Windows

来自分类Dev

如何禁用聚合物纸下拉菜单元素的动画?

来自分类Dev

设置AJAX通话并填充下拉菜单

来自分类Dev

Ajax调用后填充下拉菜单

来自分类Dev

导航通过动态页面聚合物

来自分类Dev

使用聚合物ajax响应

来自分类Dev

聚合物,以ajax形式发送图片

来自分类Dev

聚合物铁ajax间隔呼叫

来自分类Dev

聚合物-ajax神秘结合

来自分类Dev

聚合物模板与核心ajax重复

来自分类Dev

Ajax与聚合物。响应后渲染

来自分类Dev

使用数组时,如何在聚合物的纸张下拉菜单中为纸张项目分配值?

来自分类Dev

PHP填充下拉菜单

来自分类Dev

Infragistics填充下拉菜单

来自分类Dev

下拉菜单+自动填充

来自分类Dev

飞镖,聚合物生成失败,找不到聚合物/polymer.dart吗?

来自分类Dev

聚合物芯-ajax在新的聚合物元件中表现异常

来自分类Dev

测试AJAX下拉菜单

来自分类Dev

通过JavaScript函数填充HTML下拉菜单

来自分类Dev

Ajax填充下拉菜单,只需单击两次