因此,问题是:
- 改变
ng_model
每ng-model
在div id=date
元件; ng_model
从input
元素中删除并实现ngModelCtrl.$render
功能,以将模型更改呈现给元素- 根据组件文档:
唯一公开的事件是“ changeDate”,它将在事件对象上公开“ date”和“ localDate”属性
因此,您需要以其他方式处理变更事件,请看:
element.datetimepicker({ dateFormat:'dd/MM/yyyy hh:mm:ss', language: 'pt-BR' }).on('changeDate', function(e) { ngModelCtrl.$setViewValue(e.date); scope.$apply(); });这是工作中的Plnkr。
一些其他提示:
- 如前所述,删除内部
ng-model
并实施ngModelCtrl.$render
以处理模型更改 - 使用
template
属性以封装组件的内部元素
一个使用$ render的非常简单的示例:
var picker = element.data('datetimepicker');ngModelCtrl.$render = function() { if (ngModelCtrl.$modelValue) { picker.setLocalDate(ngModelCtrl.$modelValue); } else { picker.setLocalDate(null); }}


