Недавно я начал изучать Дарт и Полимер и нашел проблему. Я написал элемент my-loginarea
в Polymer, который содержит два полимерных элемента username-input
и password-input
. Оба имеют сценарий Дарт, который имеет метод проверки, являются ли входы пустыми.Как назвать метод элемента Dart Polymer в тени DOM?
String verifyPassword() {
if(password == null || password.isEmpty) {
errorMsg = "Password empty";
}
return errorMsg;
}
Если кнопка нажата Войти, метод verifyLogin()
из my-loginarea
элемента вызывается, чтобы проверить вход. Я хочу, чтобы этот метод вызывал метод verifyPassword
на username-input
и password-input
, но я не знаю, как назвать эти методы или по крайней мере, как получить ссылку на экземпляр этих элементов.
Вот код LoginArea.html:
<polymer-element name="my-loginarea">
<template>
<template if="{{!userLoggedIn}}">
<div align="center">
<table>
<tr>Username:
<login-usernameinput></login-usernameinput>
</tr>
<tr>Password:
<login-passwordinput></login-passwordinput>
</tr>
<tr>
<button on-click="{{verifyLogin}}">Login</button>
</tr>
<span id="error" hidden?="{{errorMsgs.isEmpty}}">
<template repeat="{{err in errorMsgs}}">
<p>{{err}}</p>
</span>
</table>
</div>
</template>
<template if="{{userLoggedIn}}">
<div align="center">
<p>Successfully logged in!</p>
<button on-click="{{userLogout}}">Logout</button>
</div>
</template>
<script type="application/dart" src="loginBehaviour.dart"></script>
</polymer-element>
Было бы полезно, если бы вы могли добавить больше своего кода. Как элементы организованы в HTML? Являются ли упомянутые вами полимерные элементы одним и тем же (родительским) элементом Polymer или находятся непосредственно в HTML-странице вашей страницы входа ('index.html ')? –
Я только что редактировал свой вопрос и добавил код HTML – Azael
Я обновил свой ответ. –