Se você insistir em executar o .htmlarquivo localmente e não servi-lo com um servidor da web, poderá impedir que essas solicitações entre origens ocorram em primeiro lugar, disponibilizando os recursos problemáticos em linha.
Eu tive esse problema ao tentar atender .jsarquivos file://. Minha solução foi atualizar meu script de construção para substituir as <script src="...">tags <script>...</script>. Aqui está uma gulpabordagem para fazer isso:
1. corra npm install --save-devpara pacotes gulp, gulp-inlinee del.
2. Depois de criar um gulpfile.jsno diretório raiz, adicione o seguinte código (basta alterar os caminhos do arquivo para o que mais lhe convier):
let gulp = require('gulp');
let inline = require('gulp-inline');
let del = require('del');
gulp.task('inline', function (done) {
gulp.src('dist/index.html')
.pipe(inline({
base: 'dist/',
disabledTypes: 'css, svg, img'
}))
.pipe(gulp.dest('dist/').on('finish', function(){
done()
}));
});
gulp.task('clean', function (done) {
del(['dist/*.js'])
done()
});
gulp.task('bundle-for-local', gulp.series('inline', 'clean'))
- Execute
gulp bundle-for-localou atualize seu script de construção para executá-lo automaticamente.
Você pode ver o problema e a solução detalhados do meu caso aqui .