由于某些原因,我绑定到我发布的属性时输入为空。有什么想法我需要做什么?我还必须使用发布probs绑定到内部模板。
<polymer-element name="my-foo.html" noscript>
<script>
Polymer('my-element', {
publish: {
test: 1,
foo : {
baa: 1.000
}
},
// Fires when an instance of the element is created
created: function () {
},
});
</script>
<template>
<form>
<input value="{{test}}">
<input value="{{foo.baa}}">
</form>
<button>Submit</button>
</template>
</polymer-element>
答案 0 :(得分:2)
您的代码存在以下几个问题:
noscript
属性。只有在将Polymer构造函数留空时才能使用noscript
(因此您可以省略<script>
部分,而您的元素仍然会被注册)。但这显然不是这种情况,所以请忽略这个属性。name
属性应为my-foo
。扩展程序.html
不是必需的。name
属性相同的名称。因此,您需要编写my-element
而不是my-foo
。或者您可以将构造函数放在<template>
块之后。然后没有必要提供任何名称。以下是jsfiddle并修剪了您更正后的代码:
http://jsfiddle.net/kreide/knzjhjyd/
<script src="https://www.polymer-project.org/components/webcomponentsjs/webcomponents.js"></script>
<link rel="import" href="http://www.polymer-project.org/components/polymer/polymer.html">
<polymer-element name="my-foo">
<script>
Polymer('my-foo', {
publish: {
test: 1,
foo: {
baa: 1.000
}
},
// Fires when an instance of the element is created
created: function() {}
});
</script>
<template>
<form>
<input value="{{test}}">
<input value="{{foo.baa}}">
</form>
<button>Submit</button>
</template>
</polymer-element>
<my-foo></my-foo>