微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在webpack中找不到模块开发模式

如何解决在webpack中找不到模块开发模式

加载网页时,在Web浏览器控制台中出现以下错误

Uncaught TypeError: Failed to resolve module specifier "lit-html". Relative references must start with either "/","./",or "../".

我正在使用lit-html,它在node_modules目录中。

这是我的tsconfig.json

{
  "compilerOptions": {
    "outDir": "static/js","sourceMap": true,"strict": true,"target": "es2017","strictnullchecks": true,"strictFunctionTypes": true,"strictBindCallApply": true,"strictPropertyInitialization": true,"noImplicitReturns": true,"noFallthroughCasesInSwitch": true,"allowJs": true,"moduleResolution": "node"
  },"compileOnSave": true,"include": ["src"]
}

这是我的webpack.config.js

const path = require("path");
// const TsconfigPathsPlugin = require("tsconfig-paths-webpack-plugin");

var config = {
    entry: {
        main: path.join(__dirname,"src/index.ts"),},output: {
        filename: "index.js",path: path.join(__dirname,"static/js"),module: {
        rules: [
            {
                test: /\.tsx?$/,loader: "ts-loader",exclude: /node_modules/,options: {
                    configFile: path.resolve(__dirname,"tsconfig.json"),],resolve: {
        extensions: [".tsx",".ts",".js"],// modules: [path.resolve(__dirname,"src"),path.resolve(__dirname,"node_modules"),"node_modules"],// plugins: [
        //  new TsconfigPathsPlugin({
        //      configFile: path.join(__dirname,//  }),// ],};

module.exports = (env,argv) => {
    if (argv.mode === "development") {
        // config.devtool = "source-map";
        config.devtool = "inline-source-map";
        config.devServer = {
            contentBase: path.join(__dirname,"static"),compress: true,headers: { "Access-Control-Allow-Origin": "*" },port: 9000,overlay: true,};
    }

    if (argv.mode === "production") {
        //...
    }

    return config;
};

我在development模式下运行webpack,如下所示:webpack-dev-server --mode development --open 我得到了错误,但是当我以production模式运行webpack时,它是可行的:webpack --mode production

解决方法

它可以在publicPath: "/js/",部分中添加ouput

const path = require("path");
// const TsconfigPathsPlugin = require("tsconfig-paths-webpack-plugin");

var config = {
    entry: {
        main: path.join(__dirname,"src/index.ts"),},output: {
        filename: "index.js",path: path.join(__dirname,"static/js"),publicPath: "/js/",module: {
        rules: [
            {
                test: /\.tsx?$/,loader: "ts-loader",exclude: /node_modules/,options: {
                    configFile: path.resolve(__dirname,"tsconfig.json"),],resolve: {
        extensions: [".tsx",".ts",".js"],};

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?