Polymer 聚合物1.0:Do<;脚本>;标记位于<;dom模块>;? 问题:

Polymer 聚合物1.0:Do<;脚本>;标记位于<;dom模块>;? 问题:,polymer,polymer-1.0,polymer-starter-kit,Polymer,Polymer 1.0,Polymer Starter Kit,放置标签的哪种方法是“最佳做法?” 在内 或 在之外 此外,请回答: 为什么? 你的答案来源是什么 以“错误”的方式进行操作会有什么负面风险 聚合物起动器套件:外部 在Polymer Starter Kit中,my list.html和my greeting.html文件将标签放置在外部 像这样: <dom-module> <style>...</style> <template>...</template> <

放置
标签的哪种方法是“最佳做法?”

  • 之外
此外,请回答:

  • 为什么?
  • 你的答案来源是什么
  • 以“错误”的方式进行操作会有什么负面风险

  • 聚合物起动器套件:外部 在Polymer Starter Kit中,
    my list.html
    my greeting.html
    文件将
    标签放置在
    外部

    像这样:

    <dom-module>
      <style>...</style>
      <template>...</template>
    <dom-module>
    <script>...</script>
    
    <dom-module>
      <style>...</style>
      <template>...</template>
      <script>...</script>
    <dom-module>
    
    
    ...
    ...
    ...
    

    其他专家:内部 然而,我从谷歌员工和谷歌开发者那里听到并看到了一些例子,他们建议
    标签应该放在
    内部

    像这样:

    <dom-module>
      <style>...</style>
      <template>...</template>
    <dom-module>
    <script>...</script>
    
    <dom-module>
      <style>...</style>
      <template>...</template>
      <script>...</script>
    <dom-module>
    
    
    ...
    ...
    ...
    
    看起来像是
    标签应该在
    里面

    元素定义
    <dom-module id="element-name">
    
      <template>
        <style>
          /* CSS rules for your element */
        </style>
    
        <!-- local DOM for your element -->
    
        <div>{{greeting}}</div> <!-- data bindings in local DOM -->
      </template>
    
      <script>
        // element registration
        Polymer({
          is: "element-name",
    
          // add properties and methods on the element's prototype
    
          properties: {
            // declare properties for the element's public API
            greeting: {
              type: String,
              value: "Hello!"
            }
          }
        });
      </script>
    
    </dom-module>
    
    
    /*元素的CSS规则*/
    {{问候语}
    //元素注册
    聚合物({
    是:“元素名”,
    //在元素的原型上添加属性和方法
    特性:{
    //声明元素的公共API的属性
    问候:{
    类型:字符串,
    价值观:“你好!”
    }
    }
    });
    
    正确答案是——这不重要。尽管文档确实如@Mowzer所述,但这只是一个示例,而不是一个定义。至少有一些实际的聚合物元素,如e。G把它放在dom模块之外

    dom模块和对象Polymer构造函数定义之间的关系是通过传递给Polymer构造函数的对象的“is”属性和dom模块的id属性建立的

    发件人:

    指定与其元素的is属性相匹配的an id属性,并将a放入。Polymer将自动将此模板的内容克隆到元素的本地DOM中


    作为补充说明,您还可以成功地使用将html与JS分开-我只是猜测这是产生这个问题的一个可能原因。这种(AFAIK)的唯一缺点是,在这种情况下,元件的硫化版本将显示不正确的(偏移量)JS错误代码行号。

    并且一些聚合物元件根本没有,例如和。它们只有一个元素。需要定义样式和。如果您的元素两者都不需要,那么包含Polymer({…})调用的元素就足够了。