像文字输入

时间:2016-08-31 19:03:29

标签: angularjs

我正在尝试使用角度架构,我正在尝试使输入字段的行为与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并更新范围。 但是,这只是将字符串添加到字符串的末尾。如果有人想编辑该值并在字符串中间添加一个字符,那么它将无效。此外,还没有处理退格。

我认为我需要的是一种方法来消除输入变化,但防止渲染。

有没有人有这样的经历? 如果这不是“有角度”的方式,我真的不在乎。

0 个答案:

没有答案