जवाबों:
आप आउटपुट फ़ोल्डर को .angular-cli.json में अपडेट कर सकते हैं:
"outDir": "./location/toYour/dist"
इसका अधिक वर्तमान तरीका outDir
संपत्ति को अद्यतन करना है .angular-cli.json
।
ng build
आदेश तर्क --output-path
(या -op
छोटे के लिए) अभी भी भी समर्थित है, यदि आप एक से अधिक मान चाहते हैं जो उपयोगी हो सकता है, आप उन्हें अपने में बचा सकता है package.json
के रूप में NPM स्क्रिप्ट।
सावधान:
.angular-cli.json
संपत्ति नहीं बुलाया जाता हैoutput-path
की तरह @ cwill747 द्वारा वर्तमान में स्वीकार किए जाते हैं जवाब कहते हैं। यहीng build
तर्क है।यह
outDir
ऊपर वर्णित के रूप में कहा जाता है, और यहapps
संपत्ति के तहत है ।
।
(दिसंबर 2017)
इस उत्तर को जोड़ने के 1 साल बाद , किसी ने अनिवार्य रूप से एक ही जानकारी के साथ एक नया उत्तर जोड़ा, और मूल पोस्टर ने स्वीकार किए गए उत्तर को 1 वर्ष के उत्तरार्द्ध उत्तर में बदल दिया जिसमें इस एक की पहली पंक्ति में समान जानकारी थी।
कोणीय 6+ के लिए चीजें थोड़ी बदल गई हैं।
Cli सेटअप अब आपके कार्यक्षेत्र रूट डायरेक्टरी में angular.json (प्रतिस्थापित .angular-cli.json) में किया जाता है। डिफ़ॉल्ट कोणीय.json में आउटपुट पथ इस तरह दिखना चाहिए (अप्रासंगिक लाइनें हटा दी गई हैं):
{
"projects": {
"my-app-name": {
"architect": {
"options": {
"outputPath": "dist/my-app-name",
जाहिर है, यह आपके ऐप को WORKSPACE / dist / my-app-name में जनरेट करेगा। यदि आप किसी अन्य निर्देशिका को पसंद करते हैं, तो OutputPath को संशोधित करें।
आप कमांड लाइन तर्कों (उदाहरण के लिए CI जॉब) का उपयोग करके आउटपुट पथ को ओवरराइट कर सकते हैं:
ng build -op dist/example
ng build --output-path=dist/example
सा https://github.com/angular/angular-cli/wiki/build
आउटपुट पथ सेट करना, कोणीय को "संकलित" फ़ाइलों को रखने के लिए बताएगा, लेकिन हालाँकि आप आउटपुट पथ को बदलते हैं, ऐप चलाते समय, कोणीय अभी भी मान लेगा कि ऐप वेबसर्वर के दस्तावेज़ रूट में होस्ट किया गया है।
इसे एक उप-निर्देशिका में काम करने के लिए, आपको आधार href सेट करना होगा।
कोणीय में। आगजनी:
{
"projects": {
"my-app-name": {
"architect": {
"options": {
"baseHref": "/my-folder/",
CLI:
ng build --base-href=/my-folder/
यदि आपको नहीं पता कि ऐप को बिल्ड टाइम पर होस्ट किया जाएगा, तो आप जनरेट किए गए index.html में आधार टैग को बदल सकते हैं।
यहाँ एक उदाहरण है कि हम इसे अपने डॉकटर कंटेनर में कैसे करते हैं:
entrypoint.sh
if [ -n "${BASE_PATH}" ]
then
files=( $(find . -name "index.html") )
cp -n "${files[0]}" "${files[0]}.org"
cp "${files[0]}.org" "${files[0]}"
sed -i "s*<base href=\"/\">*<base href=\"${BASE_PATH}\">*g" "${files[0]}"
fi
आप CLI का भी उपयोग कर सकते हैं, जैसे:
ng build -prod --output-path=production
# or
ng serve --output-path=devroot
केवल एक चीज जो मेरे लिए काम करती थी, वह थी AND outDir
दोनों में बदलना ।angular-cli.json
src/tsconfig.json
मैं कोणीय प्रोजेक्ट फ़ोल्डर के बाहर अपना डिस्टर्ब फ़ोल्डर चाहता था। अगर मैंने सेटिंग में बदलाव नहीं किया src/tsconfig.json
, तो जब भी मैं प्रोजेक्ट बनाऊंगा तो Angular CLI चेतावनी फेंक देगा।
यहाँ सबसे महत्वपूर्ण लाइनें हैं ...
// angular-cli.json
{
...
"apps": [
{
"outDir": "../dist",
...
}
],
...
}
तथा ...
// tsconfig.json
{
"compilerOptions": {
"outDir": "../../dist/out-tsc",
...
}
}
cli 7x
, ऊपर में किया जाता है angular.json
और क्षेत्र है outputPath
( tsconfig
ऊपर समायोजन समान रहता है)। HTH
कोणीय सीएलआई अब ऐसा करने के लिए पर्यावरण फ़ाइलों का उपयोग करता है।
सबसे पहले, एक environments
सेक्शन को इसमें जोड़ेंangular-cli.json
कुछ इस तरह :
{
"apps": [{
"environments": {
"prod": "environments/environment.prod.ts"
}
}]
}
और फिर पर्यावरण फ़ाइल के अंदर ( environments/environment.prod.ts
इस मामले में), कुछ इस तरह जोड़ें:
export const environment = {
production: true,
"output-path": "./whatever/dist/"
};
अब जब आप चलाते हैं:
ng build --prod
यह ./whatever/dist/
फ़ोल्डर में आउटपुट करेगा ।
angular-cli: 1.0.0-beta.21
एक अन्य विकल्प यह होगा कि वेबरूट पथ को कोणीय क्लि डिस्ट फ़ोल्डर में सेट किया जाए। WebHostBuilder को कॉन्फ़िगर करते समय अपने Program.cs में बस कहें
.UseWebRoot(Directory.GetCurrentDirectory() + "\\Frontend\\dist")
या जो भी आपके डिस्टर्ब का रास्ता है।