formvalidation v1.3.0不能与requirejs一起使用

时间:2019-02-21 23:14:44

标签: requirejs formvalidation-plugin formvalidation.io

我有以下当前正在工作的代码

表格:

<form id="demoForm" method="POST">
    // bootstrap form...
</form>

页面脚本:

<script src="~/scripts/Framework/jquery-3.3.1.min.js"></script>
<script src="~/scripts/Framework/bootstrap-4/js/bootstrap.bundle.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/es6-shim/0.35.3/es6-shim.min.js"></script>
<script src="~/scripts/Plugins/formvalidation-1.3.0/js/FormValidation.full.min.js"></script>
<script src="~/script/Plugins/formvalidation-1.3.0/js/plugins/Bootstrap.min.js"></script>
 <script src="~/script/Plugins/formvalidation-1.3.0/js/plugins/J.min.js"></script>
<script>
$(function(){
$('#demoFrom').formValidation({
plugins: {
declarative: new FormValidation.plugins.Declarative({ html5Input: true }),
trigger: new FormValidation.plugins.Trigger(),
bootstrap: new FormValidation.plugins.Bootstrap(),
submitButton: new FormValidation.plugins.SubmitButton(),
icon: new FormValidation.plugins.Icon({
    valid: 'fa fa-check',
    invalid: 'fa fa-times',
    validating: 'fa fa-refresh'
})
}
});
});
</script>

但是当我尝试使用requirejs时,它不是。下面的NOT WORKING代码:

<script src="~/scripts/Framework/require.js" data-main="~/scripts/app.js">

App.js:

require.config({
    baseUrl: '/Scripts/',
    paths: {
        jquery: 'Framework/jquery-3.3.1.min',
        bootstrap:'Framework/bootstrap-4/js/bootstrap.bundle.min',
        es6Shim: 'Framework/es6-shim.min',
        fvMain: 'Plugins/formvalidation-1.3.0/js/FormValidation.full.min',
        fvBootstrap: 'Plugins/formvalidation-1.3.0/js/plugins/Bootstrap.min',
        fvJQuery: 'Plugins/formvalidation-1.3.0/js/plugins/J.min'
    },
    shim: {
        jquery: {
            exports: '$'
        },
        bootstrap: {
            deps:['jquery']
        },
        fvBootstrap: {
            deps: ['es6Shim', 'fvMain','fvJQuery']
        }
    }
});

require(['jquery', 'bootstrap'],
    function ($) {
//... some other tasks
require[('fvBootstrap'), function(){
$('#demoFrom').formValidation({
plugins: {
declarative: new FormValidation.plugins.Declarative({ html5Input: true }),
trigger: new FormValidation.plugins.Trigger(),
bootstrap: new FormValidation.plugins.Bootstrap(),
submitButton: new FormValidation.plugins.SubmitButton(),
icon: new FormValidation.plugins.Icon({
    valid: 'fa fa-check',
    invalid: 'fa fa-times',
    validating: 'fa fa-refresh'
})
}
});
});

});

在requirejs代码中,我收到错误“未定义FormValidation”

我尝试与此问题联系开发人员,但没有任何运气。有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

再次检查您的导入,我想您正在包括该库,但实际上您的目录中没有它。 检查此导入

<script src="~/scripts/Plugins/formvalidation-1.3.0/js/FormValidation.full.min.js"></script>