আমি একটি অ্যাপোলো সার্ভার প্রকল্প পেয়েছি যা আমাকে সমস্যায় ফেলেছে, তাই আমি ভেবেছিলাম যে আমি এটি আপডেট করতে পারি এবং সর্বশেষতম ব্যাবেল ব্যবহার করার সময় সমস্যাগুলির মধ্যে চলে আসব। আমার "index.js" হ'ল:
require('dotenv').config()
import {startServer} from './server'
startServer()
এবং আমি এটি চালানোর সময় আমি ত্রুটিটি পেয়েছি "সিনট্যাক্স এরির: কোনও মডিউলের বাইরে আমদানি বিবৃতি ব্যবহার করতে পারি না"। প্রথমে আমি টিপিটিবি * কে বোঝানোর জন্য কিছু করার চেষ্টা করেছি যে এটি একটি মডিউল (কোনও সাফল্য ছাড়াই) ছিল। সুতরাং আমি "আমদানি" কে "প্রয়োজনীয়" হিসাবে পরিবর্তন করেছি এবং এটি কার্যকর হয়েছে।
তবে এখন অন্য ফাইলে আমার প্রায় দুই ডজন "আমদানি" রয়েছে যা আমাকে একই ত্রুটি দেয়।
* আমি নিশ্চিত যে আমার সমস্যার মূলে আমি সমস্যা সম্পর্কে কী অভিযোগ করছে তা এমনকি আমি নিশ্চিত নই। আমি বাছাই করেছি বাবেল 7 (যেহেতু আমি বাবেল 6 থেকে আসছি এবং আমাকে প্রিসেটগুলি পরিবর্তন করতে হয়েছিল) তবে আমি 100% নিশ্চিত নই।
সমাধানগুলির জন্য আমি যা পেয়েছি তার বেশিরভাগটি সরাসরি নোডের সাথে প্রযোজ্য বলে মনে হয় না। এখানে এটি পছন্দ করুন:
ES6 মডিউল আমদানি করে "আনকচড সিনট্যাক্স এরিয়ার: অপ্রত্যাশিত শনাক্তকারী"
বলে যে এটি "টাইপ = মডিউল" যোগ করে সমাধান করা হয়েছিল তবে এটি সাধারণত এইচটিএমএল এ চলে যায় যার মধ্যে আমার কিছুই নেই। আমি আমার প্রকল্পের পুরানো প্রিসেটগুলি ব্যবহার করার চেষ্টা করেছি:
"presets": ["es2015", "stage-2"],
"plugins": []
তবে এটি আমার আরও ত্রুটি পেয়েছে: "ত্রুটি: প্লাগইন / প্রিসেট ফাইলগুলিকে কেবল পণ্যগুলি রফতানি করার অনুমতি নেই" "
আপডেট: এখানে যে নির্ভরতাগুলি দিয়ে শুরু করেছি তা এখানে:
"dependencies": {
"@babel/polyfill": "^7.6.0",
"apollo-link-error": "^1.1.12",
"apollo-link-http": "^1.5.16",
"apollo-server": "^2.9.6",
"babel-preset-es2015": "^6.24.1",
jest.config.js
করা 'ts-jest/presets/js-with-ts'
- এখনও কিছু অন্যান্য সমস্যা রয়েছে তবে এটি বড় সমাধান করেছে। ..... হ্যাঁ, আমার সমস্যা সম্পর্কিত পরীক্ষা করছিল ... সাধারণ বিল্ডগুলি ভাল ছিল