Простая функция, которой передаётся объект blob
:
output_blob(data) {
window.open(URL.createObjectURL(data));
}
Окно не открывается в Google Chrome версии 75.0.3770.100 (Официальная сборка), (64 бит)
на OS Ubuntu 18.04
. Не выводится никаких ошибок! интересно ещё и то, что вот так срабатывает:
output_blob(data) {
window.open();
}
В чём может быть проблема?
Всплывающее окно блокируется либо браузером, либо расширением для браузера.
1 Пример из практики.
<!-- Где-то в шаблоне компонента. -->
Экспорт файла <i>.*csv</i> по <a href="#" @click="exportToCsv">ссылке</a>.
// Где-то в поле `methods` компонента.
exportToCsv(event) {
let csvContent = ...;
let url = URL.createObjectURL(
new Blob([csvContent], {
type: 'text/csv;charset=utf-8;'
})
);
event.target.setAttribute('href', url);
event.target.setAttribute('download', '997553.csv');
}
2 Или решение "в лоб": window.location = url;
.
3 Если по каким-то причинам все-таки нужно всплывающее окно:
output_blob(data) {
let url = URL.createObjectURL(data);
let newWindow = window.open();
newWindow.onload = function() {
newWindow.location = url;
}
}
попробуйте сделать так
let bind=null
output_blob(data) {
bind = data
url = URL.createObjectURL(bind)
return window.open(url);
}
или
output_blob(data) {
let url = URL.createObjectURL(data)
function inject(){
return URL.createObjectURL(url);
}
return window.open(inject());
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Какие существуют виды рекламных бордов и как выбрать подходящий?
Есть форма для регистрации, но про нажатии на кнопку ничего не происходитКод формы:
Я пытаюсь создать экран ожидания c цифрами обратного отсчета, который показывает глаз вместе с веком, и глазное яблоко с эффектом радужной...
У меня есть валидация с помощью регулярки, где я проверяю совпадают ли условия с введенными даннымиСейчас показан пример где нужно ввести...