কৌণিক 2+ থেকে অব্যবহৃত আমদানি এবং ঘোষণাগুলি সরানোর কোনও উপায় আছে?


139

আমাকে অন্য বিকাশকারীদের কাছ থেকে কিছু মেসড কোড নেওয়ার জন্য নিয়োগ দেওয়া হয়েছে যারা ইতিমধ্যে সম্প্রতি কোম্পানিটি ছেড়ে গেছে।

আমি কৌতুহলবশত জিজ্ঞাসা করছি ভিজ্যুয়াল স্টুডিও কোডের কোনও প্লাগইন বা অন্যান্য উপায় যা আমাদের দ্রুত এবং কার্যকরভাবে আমদানি এবং রেফারেন্সগুলিকে পরিচ্ছন্ন ও পরিচালনা করতে সহায়তা করতে পারে?

উদাহরণস্বরূপ, এখানে শত শত আমদানি হতে পারে

import { AutoCompleteModule,InputSwitchModule } from 'primeng/primeng';
import { ListboxModule } from 'primeng/primeng';

একইভাবে রূপান্তরিত হতে পারে

import { AutoCompleteModule,
         InputSwitchModule,
         ListboxModule  } from 'primeng/primeng';

বা অন্যান্য ফাংশনগুলি যেমন অ্যাপ্লিকেশন থেকে অযাচিত আমদানি এবং ঘোষণাগুলি স্বয়ংক্রিয়ভাবে মুছে ফেলা হবে? মডুল থেকে বা পুরো প্রকল্পের মাধ্যমে সমস্ত উপাদান থেকে?

কোন প্রতিক্রিয়া জন্য ধন্যবাদ!


আমিও ভাবছি যে বিশেষভাবে উপাদানগুলির মধ্যে বহিরাগত আমদানিগুলি পারফরম্যান্সের জন্য একটি টান।
মারসিডিয়াস

8
stackoverflow.com/a/49697144/3914072 আমার জন্য কাজ করে - vscode 1.22 করতে Shift + অল্টার + হে!
রজব শাকিরভ

কমান্ড লাইন (বা গিট হুক) থেকেও করা যেতে পারে: npmjs.com/package/organize-imports-cli
thorn̈

উত্তর:


168

সম্পাদনা করুন (মতামত এবং অন্যান্য ব্যক্তিদের মতামত হিসাবে), ভিজ্যুয়াল স্টুডিও কোডটি এই ডিফল্ট কীবোর্ড শর্টকাটগুলির সাথে "আমদানি সংগঠিত করুন" কমান্ড হিসাবে অন্তর্নির্মিত এই কার্যকারিতা সরবরাহ করে :

option+ + Shift+ + OMac এর জন্য

Alt + + Shift + + Oজন্য উইন্ডোজ


আসল উত্তর:

আমি আশা করি এই ভিজ্যুয়াল স্টুডিও কোড এক্সটেনশনটি আপনার প্রয়োজনের জন্য যথেষ্ট হবে: https://marketplace.visualstudio.com/items?itemName=rbbit.typescript-hero

এটি নিম্নলিখিত বৈশিষ্ট্যগুলি সরবরাহ করে:

  • আপনার বর্তমান ফাইলটিতে আপনার প্রকল্পের আমদানি বা লাইব্রেরি যুক্ত করুন
  • কার্সারের অধীনে বর্তমান নামের জন্য একটি আমদানি যুক্ত করুন
  • একটি কমান্ড সহ কোনও ফাইলের সমস্ত অনুপস্থিত আমদানি যুক্ত করুন
  • ইন্টেলিজেন্স যা প্রতীকগুলির পরামর্শ দেয় এবং স্বয়ংক্রিয়ভাবে প্রয়োজনীয় আমদানিগুলি "লাইট বাল্ব বৈশিষ্ট্য" যুক্ত করে যা আপনার লেখা কোডটিকে ঠিক করে দেয়
  • আপনার আমদানিগুলি বাছাই করুন এবং সংগঠিত করুন (সাজানো এবং অব্যবহৃত সরান )
  • আপনার ওপেন টিএস / টিএসএক্স ডকুমেন্টের কোড রূপরেখা ভিউ
  • পাশাপাশি জাভাস্ক্রিপ্টের জন্য সমস্ত দুর্দান্ত জিনিস! (যদিও পরীক্ষামূলক পর্যায়ে, নীচে আরও ভাল বর্ণনা।)

ম্যাকের জন্য: control+ option+o

উইনের জন্য: Ctrl+ Alt+o


1
আমাকে এই অ্যাড-অনে পরিণত করার জন্য ধন্যবাদ, এটি কাঁপছে! আমি এটি ইনস্টল না করা পর্যন্ত আমি এই ছোট্ট কার্যকারিতাটির (অটো আমদানি) যত্ন নেওয়ার জন্য অটো-আমদানি এক্সটেনশান ইনস্টল করেছি। তবে টাইপস্ক্রিপ্ট হিরো ইনস্টল করার পরে ... বাহ, এটি আমদানির বিবৃতিগুলির মধ্যে বর্ণানুক্রমিক ক্রমে নির্ভরতা বাছাই করা, উপাদানগুলি শ্রেণীর মধ্যে ব্যবহার করা হয় না এমন আমদানি থেকে মুক্তি পাওয়া ইত্যাদি সহ আমার যা কিছু করার প্রয়োজন তা করে!
মার্সিডিয়াস

2
২০১৩ সালে টিএস হিরোর প্রকল্প রক্ষণাবেক্ষণকারী জানিয়েছেন যে তিনি সম্প্রসারণ বন্ধ করবেন, যেহেতু এটি সরাসরি ভিএস কোডে মূল কার্যকারিতা বাস্তবায়নের পরে অপ্রচলিত হয়ে পড়েছে (অন্যান্য আসল দেখুন)।
মাতারাউ

2
Alt+Shift+Oআমদানি পুনরায় অর্ডার না করে কল করার কোনও উপায় ?
এক্সসিএস

লিনাক্সের জন্যও আল্ট + শিফট + ও
মানমান

155

ভিজ্যুয়াল স্টুডিও কোড প্রকাশের 1.22 হিসাবে এটি কোনও এক্সটেনশনের প্রয়োজন ছাড়াই নিখরচায় আসে।

Shift+ Alt+O আপনার যত্ন নেবে।


1
নিস! আমি সিটিআরএল + শিফট + ব্যবহার করছি - চিরকাল থেকে এবং এখন আমি শর্টকাটটি খুঁজে পেতে এবং পরিবর্তন করতে পারি।
জর্জিজি

আমাকে এটি ইনস্টল করতে হয়েছিল, আমার ইনস্টলটি 1.37.1 এ আসেনি
পুরানো-সন্ন্যাসী

57

আপনি যদি ভারী ভিজ্যুয়াল স্টুডিও ব্যবহারকারী হন তবে আপনি কেবল নিজের পছন্দসই সেটিংসটি খুলতে এবং আপনার সেটিংসে নিম্নলিখিতটি যুক্ত করতে পারেন j json:

...
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
  "source.organizeImports": true
}
....

আশা করি এটি সহায়ক হতে পারে!


3
এটি ESLint Prettier প্লাগইনটির সাথে দ্বন্দ্ব বলে মনে হচ্ছে। এটি একটি লাইন আমদানি করার চেষ্টা করছে তবে ইএসলিন্ট একাধিক লাইনে ব্রেক করার চেষ্টা করছে।
রিচার্ড

@ রিচার্ড হিসাবে একই সমস্যা। - একটি খোলা ইস্যু হবে বলে মনে হয় github.com/prettier/prettier-vscode/issues/716
ক্রেগ

আমদানি বাছাই করার সময় অব্যবহৃত আমদানি অপসারণ নিষ্ক্রিয় করার কোনও উপায় আছে কি?
sunknudsen

দুর্দান্ত উত্তর যুগে যুগে এটি খুঁজছিলেন
আমির আফ্রিদি

41

অব্যবহৃত আমদানি, কোড বা ভেরিয়েবল সনাক্ত করতে সক্ষম হতে, tsconfig.json ফাইলটিতে আপনার এই বিকল্পগুলি রয়েছে তা নিশ্চিত করুন

"compilerOptions": {
    "noUnusedLocals": true,
    "noUnusedParameters": true
}

টাইপ স্ক্রিপ্ট সংকলকটি ইনস্টল করুন, এটির সাথে ইনস্টল করুন:

npm install -g typescript

এবং ভিসোডে ইনস্টল হওয়া টিস্লিন্ট এক্সটেনশনটি আমার পক্ষে কাজ করেছিল, তবে সক্ষম করার পরে আমি বিশেষত বড় প্রকল্পগুলিতে সিপিইউ ব্যবহারের পরিমাণ বাড়ার বিষয়টি লক্ষ্য করি।

আমি আপনার আমদানিগুলি সংগঠিত করার জন্য টাইপস্ক্রিপ্ট নায়ক এক্সটেনশান ব্যবহার করে পুনঃসংশোধন করব


41

ভিএসকোড v.1.24 এবং টাইপস্ক্রিপ্ট v.2.9:

ম্যাকের জন্য: option+ Shift+O

উইনের জন্য: Alt+ Shift+O


7
কিছু কাছে বেশি গুরুত্বপূর্ণ, কমান্ড Organize Importsবাeditor.action.organizeImports
pcnate

@pcnate আমদানি বাছাই করার সময় অব্যবহৃত আমদানি অপসারণ নিষ্ক্রিয় করার কোনও উপায় আছে কি?
sunknudsen

11

এই থ্রেডটিতে ইতিমধ্যে অনেক ভাল উত্তর আছে! যে কেউ এটির জন্য স্বয়ংক্রিয়ভাবে চেষ্টা করার জন্য আমি এটি পোস্ট করতে যাচ্ছি ! পুরো প্রকল্পের জন্য অব্যবহৃত আমদানি স্বয়ংক্রিয়ভাবে অপসারণ করতে নিবন্ধটি আমার পক্ষে সত্যিই সহায়ক ছিল।

নিবন্ধে লেখক এটিকে এভাবে ব্যাখ্যা করেছেন:

এটিতে নীচে থাকা একা একা tslint ফাইল তৈরি করুন:

{
  "extends": ["tslint-etc"],
  "rules": {
    "no-unused-declaration": true
  }
}

তারপরে আমদানি ঠিক করতে নিম্নলিখিত কমান্ডটি চালান:

 tslint --config tslint-imports.json --fix --project .

এটি নিক্ষেপ করা অন্য কোনও ত্রুটি ঠিক করার বিষয়ে বিবেচনা করুন। (আমি করেছিলাম)

তারপরে এটি নির্মাণ করে প্রকল্পের কাজগুলি পরীক্ষা করুন:

ng build

অথবা

ng build name_of_project --configuration=production 

সমাপ্তি: এটি সঠিকভাবে নির্মিত হলে আপনি সাফল্যের সাথে স্বয়ংক্রিয়ভাবে আমদানি সরিয়ে ফেলেছেন!

দ্রষ্টব্য: এটি কেবল অপ্রয়োজনীয় আমদানি সরিয়ে দেয়। পূর্বে উল্লিখিত কমান্ডগুলির মধ্যে একটি ব্যবহার করে ভিএস কোড অন্যান্য বৈশিষ্ট্যগুলি সরবরাহ করে না।


আমি পেয়েছি Could not find implementations for the following rules specified in the configuration: no-unused-declaration , সুতরাং আমার ধারণা এই সমাধানটি আর কাজ করে না।
ইউসুফ খান

আমি tslint সংস্করণটি ব্যবহার করছি5.20.1
ইউসুফ খান

0

আপনার যেতে tslint.jsonও সম্পত্তি মান পরিবর্তন no-unused-variableকরতেfalse


3
এটি ওপি যা চেয়েছিল তার ঠিক বিপরীত। এস / তিনি অব্যবহৃত পরিবর্তনশীল না no-unused-variableরাখতে চান তাই সত্য হওয়া উচিত। যা জিজ্ঞাসা করা হয়েছে তা হ'ল যদি ঠিক করা (অব্যবহৃত ভেরিয়েবলগুলি অপসারণ) স্বয়ংক্রিয়ভাবে করা যায়, যা ইতিমধ্যে উত্তর দেওয়া হয়েছে।
মাতারাউ
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.