我正在尝试使用角度架构,我正在尝试使输入字段的行为与react / redux应用程序类似。
我希望有一个带有指令的文本输入字段,通过传递正常的双向绑定行为。
这是我到目前为止所做的:
<input type="text" input-update="address1" ng-value="state.value" />
指令
export default function ($rootScope) {
return {
resrtict: 'A',
scope: {
inputUpdate: '@',
},
replace: false,
link: (scope, element) => {
element.bind('keypress', event => {
event.preventDefault();
const message = {
address: scope.inputUpdate,
payload: event.key,
};
$rootScope.$emit('updateMailbox', message);
return false;
});
},
};
}
然后在控制器中我监听$ emit并更新范围。 但是,这只是将字符串添加到字符串的末尾。如果有人想编辑该值并在字符串中间添加一个字符,那么它将无效。此外,还没有处理退格。
我认为我需要的是一种方法来消除输入变化,但防止渲染。
有没有人有这样的经历? 如果这不是“有角度”的方式,我真的不在乎。