我是Angular的新手,所以我提前为任何愚蠢的错误道歉。我已经通过Angular中的指令定义了一个textField输入:
.directive('textField', function () {
return {
restrict: 'E',
scope: true,
require: 'ngModel',
template: '{{start}}<span class="text-field-cursor">{{end}}</span>',
controller: 'TextFieldController',
link: function (scope, elem, attrs, ngModel) {
scope.keyboardOptions.limitTo = parseInt(attrs.limitTo);
scope.keyboardOptions.caps = _.has(attrs, 'caps');
scope.model = ngModel;
elem.bind('click', function () {
scope.openKeyboard();
});
elem.on('$destroy', function clickDestroyElement() {
elem.unbind();
});
}
};
})
然后,在我的HTML上,我写了
<text-field class="text-field" data-t-username focusable request-focus="true" ng-class="{ 'is-focused': (focused || active), 'is-active': active }" ng-model="data.username" placeholder='Enter your username here' limit-to="32"></text-field>
但是,占位符未在网页上可视化。我做错了什么?
答案 0 :(得分:1)
在您的指令中,模板不是输入。所以占位符无法正常工作。
您可以将span更改为输入或使用占位符的其他指令。