我有一个名为formatDate的函数。此函数使用this.$
来访问全局元素中的全局函数。唯一的问题是我收到的错误是this.$
未定义。我不确定为什么会这样。它在就绪回调中定义。
编辑:添加了代码示例。我的问题在formatDate函数中可以看到。 this.$
未定义。
<link rel="import" href="app-globals.html">
<polymer-element name="message-element" attributes="message">
<template>
<style>
:host {
display: block;
}
.message {
padding: 10px;
display: inline-block;
margin-bottom: 6px;
margin-right: 6px;
margin-left: 6px;
color: white;
clear: both;
max-width: 700px;
}
.sent-message {
background-color: #3F51B5;
float: right;
}
.received-message {
background-color: #C5CAE9;
float: left;
}
.sent-time {
font-size: 70%;
opacity: .54;
}
.clear {
clear: both;
display: block;
}
</style>
<div class="message {{message.type}}-message">
<app-globals id="globals"></app-globals>
<div>
{{message.message}}
</div>
<div class="sent-time">
{{message.sentDateTime | formatDate}}
</div>
</div>
</template>
<script>
Polymer({
formatDate: function(dateStr)
{
//console.log(this.$);
if(this.$ != null)
{
return this.$.globals.formatDate(dateStr);
}
}
});
</script>
</polymer-element>