首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法用类型记录解析“jquery”

无法用类型记录解析“jquery”
EN

Stack Overflow用户
提问于 2018-03-29 01:49:37
回答 2查看 3.8K关注 0票数 2

在我的项目中,集成类型记录和jquery有一个问题。我使用npm安装@type/ jquery和jquery,但不能在我的.ts中使用。我试着用以下方式进口:

代码语言:javascript
复制
import jquery from "jquery";
import * as $ from "jquery";
import jquery = require("jquery");
const jquery = require("jquery");
import jquery = require("@types/jquery");

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

代码语言:javascript
复制
Module not found: Error: Can't resolve 'jquery'

我的webpack配置:

代码语言:javascript
复制
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')
  }
};
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-03-31 00:38:04

我用ubuntu在另一台机器上测试了我的项目。我也犯了同样的错误:

代码语言:javascript
复制
Module not found: Error: Can't resolve 'jquery'

通过搜索,我找到了一个解决办法。对于jQuery3.x,需要使用'jquery/src/jquery'.导入模块

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

代码语言:javascript
复制
const webpack = require('webpack');
module.exports = {
    plugins: [
        new webpack.ProvidePlugin({
            $: 'jquery/src/jquery',
            jquery: 'jquery/src/jquery'
        })
    ]
}

谢谢大家的回答:)

票数 4
EN

Stack Overflow用户

发布于 2018-03-29 03:08:38

试试看

代码语言:javascript
复制
plugins: [
    new CleanWebpackPlugin(['dist']),
    new HtmlWebpackPlugin({
      title: 'DQuiz'
    }),
    new webpack.ProvidePlugin({
        $: 'jquery',
        jQuery: 'jquery',
        'window.jQuery': 'jquery'
    })
],

或者您可以使用here中的结构

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49546793

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档