如何使用requirejs连接jquery.inputmask

时间:2015-10-06 22:24:53

标签: javascript jquery requirejs jquery-inputmask

如何使用requirejs正确连接https://github.com/RobinHerbots/jquery.inputmask?官方网站文档的方法不正确。

我试着像这样做

需要-config.js

paths: {
  ...
  inputmask: "/assets/vendor/jquery.inputmask/dist/inputmask/inputmask",
  dependencyLib: "/assets/vendor/jquery.inputmask/dist/inputmask/dependencyLib",
  jQueryInputmask: "/assets/vendor/jquery.inputmask/dist/inputmask/jquery.inputmask",
  ...
}

的script.js

define('script', ['jquery', 'jQueryInputmask'], function ($) {
    ...
    $obj.inputmask(
        {
            alias: 'currency',
            rightAlign: false,
            digits: 0
        }
    );
    ...
});

但不起作用

2 个答案:

答案 0 :(得分:6)

尝试使用此代码:

require.config({
    paths: {
        ...
        "jquery"            : "../dist/jquery/jquery",
        "jQueryInputmask"   : "../dist/inputmask/jquery.inputmask",
        "inputmask"         : "../dist/inputmask/inputmask",
        ...
    },
    shim: {
        jquery: {
            exports: "$"
        },
        jQueryInputmask: {
            deps: ["jquery", "inputmask"],
            exports: "$"
        },
)

define('script', ['jquery', 'jQueryInputmask'], function ($) {
    ...
    $obj.inputmask(
        {
            alias: 'currency',
            rightAlign: false,
            digits: 0
        }
    );
    ...
});

在我的项目中,它可以设置垫片:

  

shim:为旧的传统“浏览器全局”脚本配置依赖项,导出和自定义初始化,这些脚本不使用define()来声明依赖项并设置模块值。

答案 1 :(得分:0)

我是这样做的:

require.config({
    paths: {
        jquery: '//cdnjs.cloudflare.com/ajax/libs/jquery/1.12.4/jquery.min',
        inputmask: '//cdn.jsdelivr.net/npm/inputmask@3.3.11/dist/min/jquery.inputmask.bundle.min'
    },
    shim: {
        inputmask: {
            deps: ['jquery'],
            exports: 'Inputmask'
        }
    }
});

define('script', ['inputmask'], function (Inputmask) {
    new Inputmask('email').mask('#obj');
});