1
我可以僅在HTML文件中聲明自定義元素,而在聚合物庫中沒有背後的dart代碼(.dart文件)嗎?聲明HTML中沒有代碼的自定義元素
我想只有自定義元素的html標記。此外,標記可能包含一些內聯dart代碼(例如,初始化代碼和事件處理方法)。可能嗎?
我可以僅在HTML文件中聲明自定義元素,而在聚合物庫中沒有背後的dart代碼(.dart文件)嗎?聲明HTML中沒有代碼的自定義元素
我想只有自定義元素的html標記。此外,標記可能包含一些內聯dart代碼(例如,初始化代碼和事件處理方法)。可能嗎?
編輯
沒有測試過,但我認爲它應該工作
<polymer-element name='my-element'>
<template>
<div>some content</div>
<button on-click='{{clickHandler}}'>click me</button>
</template>
<script type='application/dart'>
import 'package:polymer/polymer.dart';
@CustomTag('my-element')
class MyElement extends PolymerElement {
MyElement.created() : super.created();
void clickHandler(Event e) {
print(e.target.toString());
}
}
</script>
</polymer-element>
編輯結束
只需添加屬性noscript
。
<polymer-element name='my-element' noscript>
<template>
<div>some content</div>
</template>
</polymer-element>
在達特從這樣的組分(<polymer-element name='my-other-element' extends='my-element>...
)繼承,特別是如果所導出的元件具有相關聯的飛鏢類(在Polymer.js正常工作)不能很好地工作。
Günter,非常感謝!有用!您能否通過在html頁面中使用內聯dart-code的事件處理代碼示例來補充您的答案(如果可能的話)。 – Roman
我不確定你想要什麼。我認爲這個問題是關於沒有代碼的聚合物元素,現在你想要內聯代碼?內聯代碼是組織文件的一種不同方式。使用內聯代碼可以做什麼沒有限制(除了更糟糕的開發人員體驗)。我建議反對它。將代碼嵌入HTML文件的理由是什麼? –
我的問題是關於如何聲明一個沒有.dart文件的自定義元素。我有很多小的自定義元素。我不想爲每個元素(.html和.dart)創建兩個文件。我知道這通常是更糟的開發者體驗。但不是在我的情況。 – Roman