这是我第一次使用聚合物和JavaScript。我想知道是否可以使用dom-module属性作为js函数参数。这是我的一段代码:
<dom-module id="sustenagro-matrix" attributes="numbers params space">
<template>
<script type="text/javascript">
Matrix(space, params);
</script>
</template>
<script>
Polymer({
is: "sustenagro-matrix"
});
</script>
</dom-module>
我想使用数字和空格作为js函数矩阵的参数。它甚至可能吗?还有另一种方法可以完成吗?
谢谢; D
编辑:
新代码:
<dom-module id="sustenagro-matrix">
<template>
<h1>SustenAgro Matrix {{number}}</h1>
<h2>{{params}}</h2>
<script type="text/javascript">
//Matrix(space, params); **SPACE AND PARAMS DON'T WORK HERE. HOW CAN I GET THEM?**
</script>
</template>
<script>
Polymer({
is: "sustenagro-matrix",
properties: {
numbers: Number,
params: String,
space: String
}
});
</script>
答案 0 :(得分:2)
这是一些(工作)示例代码,可能会指向正确的方向。
<!doctype html>
<head>
<base href="http://polygit.org/components/">
<script src="webcomponentsjs/webcomponents-lite.min.js"></script>
<link href="polymer/polymer.html" rel="import">
</head>
<body>
<x-example numbers="3" spaces="2" params="hi"></x-example>
<dom-module id="x-example">
<template>
<h1>SustenAgro Matrix {{number}}</h1>
<div id="matrix"></div>
</template>
<script>
// only need this when in the main document and on non-Chrome
addEventListener('WebComponentsReady', function() {
Polymer({
is: 'x-example',
observers: [
'buildMatrix(numbers, spaces, params)'
],
buildMatrix: function(numbers, spaces, params) {
this.$.matrix.innerHTML = Matrix(numbers, spaces, params);
}
});
});
</script>
</dom-module>
<script>
// just so there is something, I don't know what your function does exactly
Matrix = function(n, s, p) {
return [n, s, p].join('|');
}
</script>
</body>
答案 1 :(得分:0)
您可以通过使用getElementById或querySelector等DOM方法获取对自定义元素的引用来引用这些值,例如:document.getElementById('mymatrix')。space
此外,Polymer 1.x不使用attributes属性,该属性全部由Polymer()自定义元素注册中的属性对象处理。