声明函数触发 Polymer 元素中的事件的正确方法是什么?
What is the proper way of stating that a function fires an event in a Polymer element?
鉴于以下非常简化的自定义 Polymer 元素,我应该如何记录 'add' 函数触发的 'added-numbers' 事件,以便它出现在 [= 生成的文档页面中11=](下图)?
<dom-module id="my-element">
<template>
<style>
:host { display: block; }
</style>
</template>
<script>
Polymer({
is: 'my-element',
properties: {
// properties go here
},
/**
* Just adds two numbers together and fires an event.
* @param {Number} a The first number
* @param {Number} b The second number
* @fires my-element#added-numbers I WANT TO DOCUMENT THE EVENT HERE
*/
add: function (a, b) {
var c = a + b;
this.fire('added-numbers', { value: c });
}
});
</script>
</dom-module>
Polymer 文档 itself 展示了如何将事件作为一个函数来记录(带有摘要和参数),但没有展示如何记录预期的函数的示例触发一个事件(或多个事件)。
我查看了 JavaScript 文档的 JSDoc 标准,它有一个 @fires
标签,这似乎是我所追求的(我已经尝试在上面使用它),但它生成文档页面时将被忽略。
我正在使用 Polymer 1.9 版,如果这有什么不同的话。
使用 @event
注释。只需在您的函数之前或元素内的其他任何地方添加一个新的注释块
/**
* Just adds two numbers together and fires an event.
* @param {Number} a The first number
* @param {Number} b The second number
*/
add: function (a, b) {
var c = a + b;
this.fire('added-numbers', { value: c });
}
/**
* Fired when .....
*
* @event event-name
* @param {{eventParam:boolean}} detail -
* eventParam: true if .....
*/
鉴于以下非常简化的自定义 Polymer 元素,我应该如何记录 'add' 函数触发的 'added-numbers' 事件,以便它出现在 [= 生成的文档页面中11=](下图)?
<dom-module id="my-element">
<template>
<style>
:host { display: block; }
</style>
</template>
<script>
Polymer({
is: 'my-element',
properties: {
// properties go here
},
/**
* Just adds two numbers together and fires an event.
* @param {Number} a The first number
* @param {Number} b The second number
* @fires my-element#added-numbers I WANT TO DOCUMENT THE EVENT HERE
*/
add: function (a, b) {
var c = a + b;
this.fire('added-numbers', { value: c });
}
});
</script>
</dom-module>
Polymer 文档 itself 展示了如何将事件作为一个函数来记录(带有摘要和参数),但没有展示如何记录预期的函数的示例触发一个事件(或多个事件)。
我查看了 JavaScript 文档的 JSDoc 标准,它有一个 @fires
标签,这似乎是我所追求的(我已经尝试在上面使用它),但它生成文档页面时将被忽略。
我正在使用 Polymer 1.9 版,如果这有什么不同的话。
使用 @event
注释。只需在您的函数之前或元素内的其他任何地方添加一个新的注释块
/**
* Just adds two numbers together and fires an event.
* @param {Number} a The first number
* @param {Number} b The second number
*/
add: function (a, b) {
var c = a + b;
this.fire('added-numbers', { value: c });
}
/**
* Fired when .....
*
* @event event-name
* @param {{eventParam:boolean}} detail -
* eventParam: true if .....
*/