Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Typescript 导入jquery.inputmask的正确方法是什么?_Typescript_Webpack_Jquery Inputmask - Fatal编程技术网

Typescript 导入jquery.inputmask的正确方法是什么?

Typescript 导入jquery.inputmask的正确方法是什么?,typescript,webpack,jquery-inputmask,Typescript,Webpack,Jquery Inputmask,我在导入网页包和打字脚本时遇到问题。以下是一些讨论: 下面是我如何与jqlite建立关系的 在应用程序中导入,如下所示: import InputMask from 'inputmask'; 要使用该名称使模块可用,您必须将其别名为 副库 webpack配置(如果需要,使用jqlite dep库,将其替换为jquery 你可以用它来代替: 我有一个类似的webpack配置,使用jQuery而不是jqLite作为依赖项: alias: { "inputmask.dependencyLib

我在导入网页包和打字脚本时遇到问题。以下是一些讨论:

下面是我如何与jqlite建立关系的

在应用程序中导入,如下所示:

import InputMask from 'inputmask';
要使用该名称使模块可用,您必须将其别名为 副库

webpack配置(如果需要,使用jqlite dep库,将其替换为jquery 你可以用它来代替:

我有一个类似的webpack配置,使用jQuery而不是jqLite作为依赖项:

alias: {
    "inputmask.dependencyLib": path.join(__dirname, '../node_modules/jquery.inputmask/dist/inputmask/inputmask.dependencyLib.jquery.js'),
    "inputmask": path.join(__dirname, '../node_modules/jquery.inputmask/dist/inputmask/inputmask.js')
}
使用
从“InputMask”导入InputMaskTypeScript编译器抛出错误:

错误TS2307:找不到模块“inputmask”

使用
导入“inputmask”$(元素)时,我得到一个运行时错误

TypeError:$(…)。inputmask不是函数


配置有问题吗,还是库本身有问题?

周末有人问,并发布了解决方案

可以找到完整的要点(带注释)。需要另外两个别名:

"jquery": path.join(__dirname, '../node_modules/jquery/dist/jquery.js'),
"inputmask.dependencyLib": path.join(__dirname, '../node_modules/jquery.inputmask/dist/inputmask/inputmask.dependencyLib.jquery.js'),
"inputmask": path.join(__dirname, '../node_modules/jquery.inputmask/dist/inputmask/inputmask.js'),
"jquery.inputmask": path.join(__dirname, '../node_modules/jquery.inputmask/dist/inputmask/jquery.inputmask.js')

然后使用
import“jquery.inputmask”导入库

以防您想让它在较新版本的inputmask/jquery上运行。inputmask的某些内容已更改。我能够使用以下代码使其工作:

package.json:

"webpack": "^5.1.3",

"inputmask": "^5.0.5",
"jquery": "^3.5.1",
webpack model.exports:

resolve: {
  alias: {
    'jquery': _path('../node_modules/jquery/dist/jquery'),
    'inputmask': _path('../node_modules/inputmask/dist/jquery.inputmask'),
  },
},
ES6导入:

import 'inputmask';
import $ from 'jquery';

您必须输入
import“inputmask”在您的入口点,然后您可以从“InputMask”使用
import InputMask导入类中的模块元素@iberbeu执行此操作时,我收到相同的TS2307错误。
import 'inputmask';
import $ from 'jquery';