我正在尝试将我的Polymer网络应用程序打包为Chrome打包应用程序,但我遇到了围绕Chrome的内容安全策略(CSP)的一些问题.我--csp在打包之前对应用程序进行硫化(使用选项),这对JavaScript部分非常有用,但无法提取Polymer的元素中内联的CSS.有没有办法1)覆盖聚合物CSS的CSP或2)提取CSS并将其放在所有Polymer元素的单独文件中?
据我所知,有一个公关正在努力解决这个问题,但自8月以来它还没有更新:https://github.com/Polymer/vulcanize/pull/33.
所以我试图动态生成一个从 AJAX 数据源填充的纸下拉菜单,使用下面的代码效果很好:
<polymer-element name="my-element" attributes="selected">
  <template>
    <core-ajax auto url="/api/items/" response="{{items}}" handleAs="json"></core-ajax>
    <paper-dropdown-menu selected="{{selected}}">
      <template repeat="{{items}}">
        <paper-item name="{{id}}" label="{{name}}"></paper-item>
      </template>
    </paper-dropdown-menu>
  </template>
Run Code Online (Sandbox Code Playgroud)
但是,如果我将初始选定项设置为已发布属性的值,或者我在“就绪”回调中设置的值,则加载项时不会选择下拉菜单项:
  <script>
  Polymer({
    publish: {
      selected: null
    }
  });
  </script>
</polymer-element>
Run Code Online (Sandbox Code Playgroud)
我知道发生这种情况是因为在绑定下拉列表中的模板之前设置了“selected”属性,但我的问题是是否有办法 1) 将“selected”属性更改推迟到模板绑定之后或 2) 否则可靠地为下拉菜单设置初始选择的值?
polymer ×2