【发布时间】:2014-09-30 15:23:13
【问题描述】:
我已经在Github 开始了我自己的小型WebComponents 库,并且在测试时它自己运行良好。
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>WebComponents</title>
<script src="bower_components/platform/platform.js"></script>
<link rel="import" href="bower_components/polymer/polymer.html">
<link rel="import" href="bower_components/WebComponents/components/scheduler/ss-scheduler.html">
</head>
<body>
<ss-scheduler cronValue="0 0 0 0 *"></ss-scheduler>
</body>
</html>
这会像这样渲染组件
这个 sn-p 显示了应该如何使用 web 组件,并且cronValue 被正确拾取并在 web 组件 中使用。
但是,当我尝试在 Github 上的另一个项目中使用 web 组件 时,只有 null 被传递给 web 组件。
websync 客户端使用angularjs 和Polymer 网络组件。
<ss-scheduler cronValue="{{task.schedule.time}}" ng-class="{hidden: !task.schedule.enabled}"></ss-scheduler>
这里我试图将 angular scope 值绑定到 cronValue 属性,但是 web 组件 内的日志语句显示没有拾取任何内容。
我在我的指令中添加了一个日志语句,暴露了task.schedule.time 值,它不是null。
值之间的某个位置未通过 angular 正确绑定到 web 组件。
我在研究和尝试解决问题时发现了这个项目,angular-bind-polymer。 但这只会有助于对 web 组件 内的值所做的更改被 angular 拾取,即使使用此 指令 也无法做到这一点。
我现在求助于您 (StackOverflow),希望找出 angular Web 组件绑定 不起作用的原因。
编辑:
我现在也尝试了angu-poly,但它也不起作用。
【问题讨论】:
-
我不确定,但我认为
cronValue中的大写V是问题所在。我将WebComponent转换为Angular.jsdirective并遇到了同样的问题,在使用所有小写cronvalue之后它又开始工作了。我想这也是WebComponent的问题。
标签: angularjs polymer web-component