javascript - ইএস 6 রফতানি/সূচী ফাইলটিতে আমদানি




ecmascript-6 webpack (3)

আমি বর্তমানে ওয়েবপ্যাক / ব্যাবেলের মাধ্যমে একটি প্রতিক্রিয়া অ্যাপে ES6 ব্যবহার করছি। আমি মডিউলটির সমস্ত উপাদান সংগ্রহ এবং রফতানি করতে সূচক ফাইলগুলি ব্যবহার করছি। দুর্ভাগ্যক্রমে, এটি দেখতে এরকম দেখাচ্ছে:

import Comp1_ from './Comp1.jsx';
import Comp2_ from './Comp2.jsx';
import Comp3_ from './Comp3.jsx';

export const Comp1 = Comp1_;
export const Comp2 = Comp2_;
export const Comp3 = Comp3_;

সুতরাং আমি এটিকে অন্য জায়গা থেকে খুব সুন্দরভাবে আমদানি করতে পারি:

import { Comp1, Comp2, Comp3 } from './components';

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


আপনি সহজেই ডিফল্ট আমদানি পুনরায় রফতানি করতে পারেন:

export {default as Comp1} from './Comp1.jsx';
export {default as Comp2} from './Comp2.jsx';
export {default as Comp3} from './Comp3.jsx';

ES7 ES8 এর জন্য একটি প্রস্তাবও রয়েছে যা আপনাকে export Comp1 from '…'; লিখতে দেয় export Comp1 from '…';


আমার export * নিয়ে একটি সমস্যা ছিল, আমি যখন ডিফল্ট ফাংশন / শ্রেণি আমদানি করতাম তখন তা অপরিবর্তিত থাকে ...

সুতরাং, আমি অবশেষে এটি export {default} from './MyClass' দিয়ে স্থির করেছি এবং এটিও কাজ করে


খুব দেরী হয়েছে তবে আমি যেভাবে সমাধান করেছি তা ভাগ করে নিতে চাই।

দুটি নামযুক্ত রফতানি রয়েছে এমন model ফাইল থাকা:

export { Schema, Model };

এবং controller ফাইল যা ডিফল্ট রফতানি আছে:

export default Controller;

আমি index ফাইলটিতে এভাবে প্রকাশ করেছি:

import { Schema, Model } from './model';
import Controller from './controller';

export { Schema, Model, Controller };

এবং ধরে নিচ্ছি যে আমি তাদের সবকটিই আমদানি করতে চাই:

import { Schema, Model, Controller } from '../../path/';




babeljs