gpt4 book ai didi

jquery - 无法用 typescript 解析 'jquery'

转载 作者:搜寻专家 更新时间:2023-10-30 21:06:34 25 4
gpt4 key购买 nike

我在项目中将 typescript 与 jquery 集成时遇到问题。我使用 npm 安装了 @types/jquery 和 jquery,但我不能在我的 .ts 中使用。我尝试导入:

import jquery from "jquery";
import * as $ from "jquery";
import jquery = require("jquery");
const jquery = require("jquery");
import jquery = require("@types/jquery");

这些导入在编译时显示错误:

Module not found: Error: Can't resolve 'jquery'

我的 webpack 配置:

module.exports = {
entry: './src/App.ts',
plugins: [
new CleanWebpackPlugin(['dist']),
new HtmlWebpackPlugin({
title: 'DQuiz'
})
],
module: {
rules: [
{
test: /\.tsx?$/,
use: 'ts-loader',
exclude: /node_modules/
},
{ test: /\.hbs$/, loader: "handlebars-loader" }
]
},
resolve: {
mainFields: ['browserify'],
extensions: ['.tsx', '.ts', '.js']
},
output: {
filename: 'bundle.js',
path: path.resolve(__dirname, 'dist')
}
};

最佳答案

我测试了在另一台机器上使用 ubuntu 构建我的项目。我得到同样的错误:

Module not found: Error: Can't resolve 'jquery'

通过一些搜索,我找到了解决方案。对于 Jquery 3.x,您需要使用 'jquery/src/jquery' 导入模块。

我使用 Tan Duong 建议的带有 provide 插件的解决方案,我认为这个解决方案对于 jquery 来说更优雅,然后导入,你可以使用:

const webpack = require('webpack');
module.exports = {
plugins: [
new webpack.ProvidePlugin({
$: 'jquery/src/jquery',
jquery: 'jquery/src/jquery'
})
]
}

谢谢大家的回答:)

关于jquery - 无法用 typescript 解析 'jquery',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49546793/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com