Аз използвам ASP.NET Core MVC 6, използвайки Visual Studio 2015. В моя скрипт gulpfile.js искам да знам дали хостинг средата е "Развитие", "Staging" или "Производство", така че да мога да добавя или премахва карти на изход (.map) и да правя други неща. Възможно ли е това?
UPDATE
Съответният въпрос на GitHub.
Отговори:
5 за отговор № 1Можете да използвате ASPNETCORE_ENVIRONMENT
(Преди това беше ASPNET_ENV
в RC1) променлива на околната среда, за да се получи околната среда. Това може да се направи във вашия гълъпфайл process.env.ASPNETCORE_ENVIRONMENT
.
Ако променливата на средата не съществува, можете да се върнете към четене на launchSettings.json
файла, който Visual Studio използва, за да стартира приложението ви. Ако това също не съществува, а след това резервен да използвате среда за развитие.
Написах следния JavaScript обект, за да се справя по-лесно с работата с околната среда в gulpfile.js. Можете да намерите пълния изходен код на gulpfile.js тук.
// Read the launchSettings.json file into the launch variable.
var launch = require("./Properties/launchSettings.json");
// Holds information about the hosting environment.
var environment = {
// The names of the different environments.
development: "Development",
staging: "Staging",
production: "Production",
// Gets the current hosting environment the application is running under.
current: function () {
return process.env.ASPNETCORE_ENVIRONMENT ||
(launch && launch.profiles["IIS Express"].environmentVariables.ASPNETCORE_ENVIRONMENT) ||
this.development;
},
// Are we running under the development environment.
isDevelopment: function () { return this.current() === this.development; },
// Are we running under the staging environment.
isStaging: function () { return this.current() === this.staging; },
// Are we running under the production environment.
isProduction: function () { return this.current() === this.production; }
};
виждам това отговор за това как да зададете променливата на средата.
1 за отговор № 2
Ще трябва да зададете променливата на средата NODE_ENV във всяка среда и след това във вашия гълъп файл, да я прочетете в process.env.NODE_ENV.
Погледни https://stackoverflow.com/a/16979503/672859 за допълнителни подробности.