在我的项目中,集成类型记录和jquery有一个问题。我使用npm安装@type/ 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')
}
};发布于 2018-03-31 00:38:04
我用ubuntu在另一台机器上测试了我的项目。我也犯了同样的错误:
Module not found: Error: Can't resolve 'jquery'通过搜索,我找到了一个解决办法。对于jQuery3.x,需要使用'jquery/src/jquery'.导入模块
我使用Tan Duong建议的解决方案并提供插件,我认为这个解决方案对于jquery来说更优雅,然后导入,您可以使用:
const webpack = require('webpack');
module.exports = {
plugins: [
new webpack.ProvidePlugin({
$: 'jquery/src/jquery',
jquery: 'jquery/src/jquery'
})
]
}谢谢大家的回答:)
发布于 2018-03-29 03:08:38
试试看
plugins: [
new CleanWebpackPlugin(['dist']),
new HtmlWebpackPlugin({
title: 'DQuiz'
}),
new webpack.ProvidePlugin({
$: 'jquery',
jQuery: 'jquery',
'window.jQuery': 'jquery'
})
],或者您可以使用here中的结构
https://stackoverflow.com/questions/49546793
复制相似问题