为什么dateFormat导致“未捕获的ReferenceError:未定义dateFormat”错误?

时间:2019-04-09 15:36:25

标签: javascript

我在一个未建的网站上工作,并且一个页面在控制台中不断出现错误:“ Uncaught ReferenceError:未定义dateFormat”

下面是包含错误的JS(在第7行)。为什么会显示为未定义?这不是JS中的标准功能吗?是否需要在它之前声明一行,例如“ var dateFormat =(something)”?只是好奇是否有人知道。否则,我将继续谷歌搜索...

MktoForms2.whenReady(function(form) {

    var formElem=form.getFormElem();

    var systemDateVal = '{{system.date}}';
    if (systemDateVal.indexOf('{{system') !== -1) {
        systemDateVal = dateFormat("mediumDate");
    }

    function delete_cookie(name, path, domain) {
        document.cookie = name + "=" + ((path) ? ";path=" + path : "") + ((domain) ? ";domain=" + domain : "") + "; expires=Thu, 01 Jan 1970 00:00:01 GMT";
    }

    $("#resetForm").click(function(e) {
        e.preventDefault();
        $(formElem).trigger('reset');
        delete_cookie('_mkto_trk', '/', '.spirent.com');
    });

        var optinsDateFields = {
            'Opt_in_Corp_Info__c': ['Marketing_Email_Opt_in_Date__c', 'marketingEmailOptoutDate']
        }

        var changeOptinAction = function(event) {
            var optinname = $(event.target).attr('name');
            if (optinsDateFields.hasOwnProperty(optinname)) {
                if ($(event.target).is(':checked')) {
                    $('[name=' + optinsDateFields[optinname][0] + ']', formElem).val(systemDateVal);
                    $('[name=' + optinsDateFields[optinname][1] + ']', formElem).val('');
                } else {
                    $('[name=' + optinsDateFields[optinname][1] + ']', formElem).val(systemDateVal);
                    $('[name=' + optinsDateFields[optinname][0] + ']', formElem).val('');
                }
            }
        }

        $('[name="Opt_in_Corp_Info__c"]', formElem).on('change', function (e) {
            changeOptinAction(e);
        });
        $('[name="Opt_in_Corp_Info__c"]', formElem).change();
});

1 个答案:

答案 0 :(得分:1)

它看起来像是为代码本地定义的函数,还是来自dateform npm模块。

安装是npm install dateformat,需要初始化它

var dateFormat = require('dateformat');

mediumDate是此模块的命名格式,如此处所示。 https://www.npmjs.com/package/dateformat 格式如下:2007年6月9日