数字小键盘8和9崩溃应用程序 - KnockoutJS + Cordova

时间:2017-03-11 14:59:10

标签: javascript cordova knockout.js phonegap-plugins

我在项目中面临一个奇怪的问题。我使用KnockoutJS来创建我的UI。我正在使用Android Cordova的最新版本。我在KnockoutJS中定义了一个HTML输入类型number

    <input maxlength="3" type="number" data-bind="maxLength: maxLengthSeats" placeholder="seats" />

然而,当我在Android设备上运行我的应用程序时,数字小键盘会打开,但是当我输入8或9时,我的应用程序崩溃了。没有错误或日志。该应用程序只是停在一个白色屏幕,我看到我的设备的主屏幕。

为什么会出现问题?我尝试创建一个全新的Cordova项目,并添加了一个正常工作的输入数字。那么Knockout的问题是什么?

将Knockout与cordova结合使用时,有没有人遇到过这样的问题?

 //truncate value extender
  ko.extenders.truncateValue = function(target, option) {                            
  target.subscribe(function (newValue) {
      if(newValue.length > option){
          target(newValue.substring(0,option));
      }                    
   });

   return target;
};

 //maximum length extender
  ko.bindingHandlers.maxLength = {
   init:  function (element, valueAccessor, allBindingsAccessor,      
    viewModel) {
      'use strict';                     

      var maxlength = element.getAttribute("maxlength");

      valueAccessor().extend({truncateValue: maxlength })
      ko.bindingHandlers.value.init(element, valueAccessor,     
   allBindingsAccessor, viewModel);    
  }   
};

0 个答案:

没有答案