ক্ষেত্রের 'ব্রাউজারে' একটি বৈধ উপন্যাস কনফিগারেশন নেই


131

আমি ওয়েবপ্যাক 2 ব্যবহার করতে শুরু করেছি (সুনির্দিষ্টভাবে বলার জন্য v2.3.2) এবং আমার কনফিগারেশনটি পুনরায় তৈরি করার পরে আমি এমন একটি সমস্যা নিয়ে চালিয়ে যাচ্ছি যা আমি সমাধান করতে পারছি না বলে মনে হচ্ছে (কুশ্রী ডাম্পের জন্য আগাম দুঃখিত):

ERROR in ./src/main.js
Module not found: Error: Can't resolve 'components/DoISuportIt' in '[absolute path to my repo]/src'
resolve 'components/DoISuportIt' in '[absolute path to my repo]/src'
  Parsed request is a module
  using description file: [absolute path to my repo]/package.json (relative path: ./src)
    Field 'browser' doesn't contain a valid alias configuration
    aliased with mapping 'components': '[absolute path to my repo]/src/components' to '[absolute path to my repo]/src/components/DoISuportIt'
      using description file: [absolute path to my repo]/package.json (relative path: ./src)
        Field 'browser' doesn't contain a valid alias configuration
      after using description file: [absolute path to my repo]/package.json (relative path: ./src)
        using description file: [absolute path to my repo]/package.json (relative path: ./src/components/DoISuportIt)
          as directory
            [absolute path to my repo]/src/components/DoISuportIt doesn't exist
          no extension
            Field 'browser' doesn't contain a valid alias configuration
            [absolute path to my repo]/src/components/DoISuportIt doesn't exist
          .js
            Field 'browser' doesn't contain a valid alias configuration
            [absolute path to my repo]/src/components/DoISuportIt.js doesn't exist
          .jsx
            Field 'browser' doesn't contain a valid alias configuration
            [absolute path to my repo]/src/components/DoISuportIt.jsx doesn't exist
[[absolute path to my repo]/src/components/DoISuportIt]
[[absolute path to my repo]/src/components/DoISuportIt]
[[absolute path to my repo]/src/components/DoISuportIt.js]
[[absolute path to my repo]/src/components/DoISuportIt.jsx]

package.json

{
  "version": "1.0.0",
  "main": "./src/main.js",
  "scripts": {
    "build": "webpack --progress --display-error-details"
  },
  "devDependencies": {
    ...
  },
  "dependencies": {
    ...
  }
}

নিরিখে browserক্ষেত্র এটি সম্পর্কে অভিযোগ হচ্ছে, ডকুমেন্টেশন আমি এই খুঁজে পেতে সক্ষম চলেছি হল: package-browser-field-spec। এছাড়া তার জন্য webpack ডকুমেন্টেশন, কিন্তু এটা এটি ডিফল্ট চালু আছে বলে মনে হয়: aliasFields: ["browser"]। আমি browserআমার সাথে একটি ক্ষেত্র যুক্ত করার চেষ্টা করেছি package.jsonতবে এটি কোনও ভাল করতে পারে বলে মনে হচ্ছে না।

webpack.config.js

import path from 'path';
const source = path.resolve(__dirname, 'src');

export default {
  context: __dirname,
  entry: './src/main.js',
  output: {
    path: path.resolve(__dirname, 'dist'),
    filename: '[name].js',
  },
  resolve: {
    alias: {
      components: path.resolve(__dirname, 'src/components'),
    },
    extensions: ['.js', '.jsx'],
  },
  module: {
    rules: [
      {
        test: /\.(js|jsx)$/,
        include: source,
        use: {
          loader: 'babel-loader',
          query: {
            cacheDirectory: true,
          },
        },
      },
      {
        test: /\.css$/,
        include: source,
        use: [
          { loader: 'style-loader' },
          {
            loader: 'css-loader',
            query: {
              importLoader: 1,
              localIdentName: '[path]___[name]__[local]___[hash:base64:5]',
              modules: true,
            },
          },
        ],
      },
    ],
  },
};

src / main.js

import DoISuportIt from 'components/DoISuportIt';

src / উপাদান / DoISuportIt / index.jsx

export default function() { ... }

সম্পূর্ণতার জন্য, .babelrc

{
  "presets": [
    "latest",
    "react"
  ],
  "plugins": [
    "react-css-modules"
  ],
  "env": {
    "production": {
      "compact": true,
      "comments": false,
      "minified": true
    }
  },
  "sourceMaps": true
}

আমি কী ভুল / নিখোঁজ করছি?

উত্তর:


101

ওয়েবপ্যাকটি কেবল একটি আমদানির সমাধান না করে একটি সমস্যা হিসাবে দেখা গেছে - ভয়ঙ্কর ভয়াবহ ত্রুটি বার্তাগুলি সম্পর্কে কথা বলুন :(

// Had to change
import DoISuportIt from 'components/DoISuportIt';

// To (notice the missing `./`)
import DoISuportIt from './components/DoISuportIt';

1
এনপিএমের কারণে সমস্যাটি হয়? আজ আমি এনডিএম ব্যবহার করে একটি মডিউল আপগ্রেড করেছি, মডিউলটির একটি সর্বশেষ সংস্করণ আনইনস্টল করে এবং ইনস্টল করে, এখন আমি এই ত্রুটিটি পেয়েছি এবং ত্রুটিটি মডিউলটির আপেক্ষিক অবস্থান পরিবর্তন করতে বলেছে, তবে ফাইলগুলির তালিকা কিছুটা বেশি, এই সমস্ত ফাইলগুলির কারণ কী? এর আপেক্ষিক অবস্থান পরিবর্তন?
ডিপান কুমার

2
এটি আমার পাছাও বাঁচিয়েছে। এটি কিছুটা স্বজ্ঞাত যে সাস ফাইলগুলিতে আপনি 'ফোল্ডার' দিয়ে আমদানি করতে পারেন তবে .js ফাইলগুলিতে আপনাকে './folder' এর মতো করতে হবে। এছাড়াও - ডিসপ্লে-ত্রুটি-বিশদ ছাড়াই এর আগে কখনও কোনও ত্রুটি বার্তা নেই, এটি ক্র্যাশ করে
কুলগুজ

1
অনেক ধন্যবাদ. তুমি আমার দিন বাঁচাও
জারোসলা কে।

6
@ ম্যাথেজ হার্বস্ট মূ !় ত্রুটি বার্তাগুলির মধ্যে একটি :) আমার গাধা সংরক্ষণ করা হয়েছে, থেক্স!
দিমিত্রি সেনকোচিচ

5
এই উন্মাদ হয়.
কুলবয়জুলস

15

আমি একটি প্রতিক্রিয়া সার্ভার-সাইড রেন্ডারার তৈরি করছি এবং দেখেছি স্ক্র্যাচ থেকে পৃথক সার্ভার কনফিগার করার সময় এটিও ঘটতে পারে। আপনি যদি এই ত্রুটিটি দেখছেন তবে নিম্নলিখিতগুলি চেষ্টা করুন:

  1. আপনার "এন্ট্রি" মানটি আপনার "প্রসঙ্গ" মানের তুলনায় সঠিকভাবে প্যাশড রয়েছে তা নিশ্চিত করুন। মাইনে প্রবেশের ফাইলের নামের আগে "./" অনুপস্থিত ছিল।
  2. আপনার "সংকল্প" মান অন্তর্ভুক্ত রয়েছে তা নিশ্চিত করুন। নোড_মডিউলগুলিতে যে কোনও কিছুর উপর আপনার আমদানি আপনার "প্রসঙ্গ" ফোল্ডারে সন্ধান করতে ডিফল্ট হবে, অন্যথায়।

উদাহরণ:

const serverConfig = {
name: 'server',
context: path.join(__dirname, 'src'),
entry: {serverEntry: ['./server-entry.js']},
output: {
    path: path.join(__dirname, 'public'),
    filename: 'server.js',
    publicPath: 'public/',
    libraryTarget: 'commonjs2'
},
module: {
    rules: [/*...*/]
},
resolveLoader: {
    modules: [
        path.join(__dirname, 'node_modules')
    ]
},
resolve: {
    modules: [
        path.join(__dirname, 'node_modules')
    ]
}
};

11

আমার একই সমস্যা ছিল, তবে আমার পথে ভুল ক্যাসিংয়ের কারণ ছিল:

// Wrong - uppercase C in /pathCoordinate/
./path/pathCoordinate/pathCoordinateForm.component

// Correct - lowercase c in /pathcoordinate/
./path/pathcoordinate/pathCoordinateForm.component

1
এটি আমার সমস্যাও ছিল। যাইহোক, এটি আমার উইন্ডোজ ল্যাপটপে দুর্দান্ত কাজ করেছে, তবে সার্ভারে ব্যর্থ হয়েছিল, যা লিনাক্স ছিল।
ম্যাট এম

4

আমার ক্ষেত্রে এটি ছিল এমন একটি প্যাকেজ যা নির্ভরযোগ্য হিসাবে ইনস্টল করা হয়েছিল এটির package.jsonমতো সম্পর্কিত পথে:

"dependencies": {
  ...
  "phoenix_html": "file:../deps/phoenix_html"
},

এবং সাথে আমদানি js/app.jsকরাimport "phoenix_html"

এটি কাজ করেছিল কিন্তু নোড, এনপিএম ইত্যাদির একটি আপডেটের পরে ... উপরের ত্রুটি-বার্তাটি দিয়ে এটি ব্যর্থ হয়েছিল।

import "../../deps/phoenix_html"এটি স্থির করতে আমদানি লাইন পরিবর্তন করা।


ওহ না, ওয়েবপ্যাকটি কেন আপনার এত চিন্তাধারা? আমারও স্থানীয় নির্ভরতা রয়েছে।
vintproykt


3

আমার ক্ষেত্রে, webpack.config.jsযেখানে exportsকনফিগার করা উচিত তার একেবারে শেষ প্রান্তে, একটি টাইপো ছিল: export(হওয়া উচিত exports) যা লোডিংয়ের সাথে মোটেই ব্যর্থ webpack.config.jsহয়েছিল।

const path = require('path');

const config = {
    mode: 'development',
    entry: "./lib/components/Index.js",
    output: {
        path: path.resolve(__dirname, 'public'),
        filename: 'bundle.js'
    },
    module: {
        rules: [
            {
                test: /\.js$/,
                loader: 'babel-loader',
                exclude: path.resolve(__dirname, "node_modules")
            }
        ]
    }
}

// pay attention to "export!s!" here
module.exports = config;

3

আমার অভিজ্ঞতায়, এই ত্রুটিটি ওয়েবপ্যাকের ভুল নামকরণের ফলস্বরূপ ছিল। এতে আমার একটি নাম ছিল reduxএবং ওয়েবপ্যাকটি আমার উলামের পথে রিডুএক্স প্যাকেজটির সাথে সন্ধান করার চেষ্টা করেছিল redux

এটি ঠিক করার জন্য, আমি উপনামটির নাম পরিবর্তন করতে হবে এমন ভিন্ন কিছু Redux


2

যে কারও জন্য আয়নিক অ্যাপ তৈরি এবং এটি আপলোড করার চেষ্টা করা upload আপনি অ্যাপটিতে কমপক্ষে একটি প্ল্যাটফর্ম যুক্ত করেছেন তা নিশ্চিত করুন। অন্যথায় আপনি এই ত্রুটি পাবেন।


1

আয়নিক সহ প্রত্যেকের জন্য: সর্বশেষ @ আয়নিক / অ্যাপ-স্ক্রিপ্ট সংস্করণে আপডেট করা আরও ভাল ত্রুটির বার্তা দিয়েছে।

npm install @ionic/app-scripts@latest --save-dev

অ-বিদ্যমান ফাইলের উপাদানগুলিতে স্টাইলআর্লসের পক্ষে এটি একটি ভুল পথ ছিল। আশ্চর্যজনকভাবে এটি উন্নয়নে কোনও ত্রুটি দেয় নি।


1

আমার পরিস্থিতিতে আমার ওয়েবপ্যাক.কনফিগ.জেএস ফাইলের নীচে আমার রফতানি হয়নি। সহজভাবে যোগ করা

export default Config;

এটি সমাধান করুন।


0

আমি "@ গুগল-ক্লাউড / অনুবাদ": "^ 5.1.4" ব্যবহার করছি এবং আমি যতক্ষণ না চেষ্টা করেছি ততক্ষণ এই সমস্যা নিয়ে লড়াই চলছে:

আমি গুগল-গ্যাক্স \ বিল্ড \ এসআরসি \ অপারেশনস ক্লায়েন্ট.জেএস ফাইল খুলে পরিবর্তন করেছি

const configData = require('./operations_client_config');

প্রতি

const configData = require('./operations_client_config.json');

যা ত্রুটি সমাধান করেছে

ERROR in ./node_modules/google-gax/build/src/operationsClient.js Module not found: Error: Can't resolve './operations_client_config' in 'C:\..\Projects\qaymni\node_modules\google-gax\build\src' resolve './operations_client_config' ......

আমি আশা করি এটি কাউকে সাহায্য করবে


0

আমার ক্ষেত্রে, এনপিএম গ্রাহক অ্যাপ্লিকেশনটির সাথে একটি কাস্টম কৌণিক গ্রন্থাগারটি লিঙ্ক করার চেষ্টা করার সময় এটি একটি ভাঙা সিম লিঙ্কের কারণে হয়েছিল। এনপিএম লিঙ্কটি চালানোর পরে @ অনুমোদন / ক্যানভাস

`` `" @ অনুমোদন / ক্যানভাস ":" পাথ / টু / ইউআই-রচয়িতা-ক্যানভাস / ডিস্ট "` `

এটি উপস্থিত ছিল ঠিক আছে তবে মডিউলটি এখনও খুঁজে পাওয়া যায় নি:

এনপিএম লিঙ্ক থেকে ত্রুটি

আমি যখন আমদানির বিবৃতিটি এমন কোনওটিতে সংশোধন করি যা সম্পাদক লিঙ্কটি খুঁজে পেতে পারে:

import {CirclePackComponent} from '@authoring/canvas/lib/circle-pack/circle-pack.component';

ওভারফ্লো থ্রেডে উল্লিখিত এটি আমি পেয়েছি:

ফিল্ড ব্রাউজারটিতে একটি বৈধ উপন্যাস কনফিগারেশন নেই

এটি ঠিক করতে আমাকে করতে হয়েছিল:

  1. cd /usr/local/lib/node_modules/packageName
  2. cd ..
  3. rm -rf packageName
  4. লাইব্রেরির মূল ডিরেক্টরিতে, চালান: ক। rm -rf dist খ। npm run build গ। cd dist ঘ।npm link

  5. গ্রাহক অ্যাপে, "packageName": "ফাইল: / পথ / থেকে / স্থানীয় / নোড_মডিউল / প্যাকেজনাম" "এর সাথে প্যাকেজ.জসন আপডেট করুন update"

  6. গ্রাহক অ্যাপের মূল ডিরেক্টরিতে এনপিএম লিঙ্ক প্যাকেজনাম চালান run


0

আমার ক্ষেত্রে আমি অবৈধ টেম্পলেট ইউআরএল ব্যবহার করছিলাম correct সমস্যা সমাধানের সমাধান করে correct

@Component({
        selector: 'app-edit-feather-object',
        templateUrl: ''
    })

-1

আমার ক্ষেত্রে, এটি আমদানির পথে কেস-সংবেদনশীলতা টাইপোর কারণে। উদাহরণ স্বরূপ,

হতে হবে:

import Dashboard from './Dashboard/dashboard';

পরিবর্তে:

import Dashboard from './Dashboard/Dashboard';
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.