Если вы строите свое угловое приложение с помощью инструмента построения, такого как Gulp, вы можете управлять базовым URL-адресом своего приложения во время сборки. Он не позволяет вам переключать базовые URL-адреса во время выполнения, но это позволит вам, например, создать приложение, указанное на вашем локальном компьютере или сервере с помощью одной команды.
gulpfile.js:
var gulpUtil = require('gulp-util');
var gulpData = require('gulp-data');
var gulpTemplate = require('gulp-template');
var sourceDir = 'path/to/src';
var buildDir = 'path/to/build/target';
gulp.task('default', [],
function() {
return gulp.src(sourceDir + 'index.html')
.pipe(gulpData(function() {
return {
baseUrl : gulpUtil.env.baseUrl
};
}))
.pipe(gulpTemplate())
.pipe(gulp.dest(buildDir));
});
, а затем в вашем index.html:
<script>
angular.module('myApp', [])
.provider('appConfigProvider', function() {
return {
$get: function() {
return {
baseUrl: '<%= baseUrl %>'
};
}
};
});
</script>
Тогда при запуске глотка, обеспечить BaseUrl в качестве аргумента командной строки:
gulp --baseUrl https://my.server.com
Здесь задается переменная среды, доступная внутри gulpUtil.env; вы также можете предоставить конфигурацию через, скажем, файл реквизита и реквизит gulp (хотя я его не использовал). Настройка угловых приложений с помощью одной команды - одно из моих любимых применений для диспетчеров, таких как Gulp.
Удачи вам!
ли лет в виду что-то вроде @Thierry TEMPLIER упомянул в своем ответе на сообщение I упоминается? –