我正在尝试将聚合物整合到我的angularjs项目中。我做了一个非常简单的paper-dropdown-menu
,我需要获取所选项的值,以便在我的控制器中的函数中传递它。我试着用这种方式没有结果
<template id="Demo" is="dom-bind">
<paper-dropdown-menu name="simple-test">
<paper-listbox class="dropdown-content" selected="0">
<template is="dom-repeat" items="[[modes]]" as="view">
<paper-item data-ng-click="selectedMod(view)">[[view]]</paper-item>
</template>
</paper-listbox>
</paper-dropdown-menu>
</template>
<script>
Demo.modes = [
'First',
'Second',
'Third'
];
</script>
在控制器中我有功能
$scope.selectedMod = function(value) {
console.log(value)
};
但是当我点击该项目时没有任何反应。有可能这样做吗?
答案 0 :(得分:1)
您可能在代码中遗漏了一些内容。首先,在<dom-module>
标记内创建组件。
其次,在<script> </script>
中,您需要初始化Polymer
。以下是documentation:
<dom-module id="element-name">
<template>
<style>
/* CSS rules for your element */
</style>
<!-- local DOM for your element -->
<div>{{greeting}}</div> <!-- data bindings in local DOM -->
</template>
<script>
// element registration
Polymer({
is: "element-name",
// add properties and methods on the element's prototype
properties: {
// declare properties for the element's public API
greeting: {
type: String,
value: "Hello!"
}
}
});
</script>
</dom-module>
它看起来像Array
类型的binding data。你就是这样做的:
<script>
Polymer({
is: '<your-element-name>',
properties: {
modes: {
type: Array,
value = ['First', 'Second', 'Third']
}
}
})
</script>