knockout验证configure不是一个函数

时间:2015-12-17 02:13:32

标签: knockout.js requirejs

我得到ko.validation.configure不是一个函数。我在声明之前需要插件。怎么会这样?

require('knockout-validation');
ko.validation.configure({
    insertMessages: false
});

1 个答案:

答案 0 :(得分:1)

作为AMD加载程序,require应该与此模式一起使用:

require(['knockout-validation'],function(koVal){
  koVal.configure({
    insertMessages: false
  });      
});

如果要使用模式,模块应存储在变量中,并通过该变量使用:

var koVal = require('knockout-validation');

但是,在这种情况下,您需要通过ko.validation访问ko功能。因此,您必须明确要求knockout依赖项,才能使其可用。为此,您需要使用第一个模式,如下所示:

define(['knockout', 'knockout-validation'], function (ko, validation) {
   // use ko, and ko.validation as usual
};

请确保您的配置允许require同时找到knockoutknockout-validation