Отказ от ответственности: я работаю над преактом.
Вы видите эту ошибку, потому что -API createContext
не поддерживается в Preact 8.x. Это будет частью нашего следующего основного релиза, который уже не за горами. Альфа должна быть опубликована 4 марта 2019 года.
Если вам абсолютно необходимо styled-components
для работы с Preact 8.x, тогда единственный вариант - перейти на styled-components
V3, как предложил @ukosteopath.
Непросто. Но есть способ, похожий на проверку того, было ли всплывающее окно заблокировано или нет.
Когда вы попробуете схему URL, которая не поддерживается, Safari предупредит пользователя, что он не знает, что с ним делать, и останется на той же странице.
Итак, если вы дадите своему вызову приложения некоторое время для активации, скажем, 300 мс, а затем сделаете что-то еще, чтобы отреагировать на отсутствие схемы.
Это не самый красивый, но он работает:
function startIThrown(){
document.location = 'ithrown://restart';
setTimeout(function(){
if(confirm('You do not seem to have iThrown installed, do you want to go download it now?')){
document.location = 'http://itunes.apple.com/WebObjects/MZStore.woa/wa/viewSoftware?id=293049283&mt=8&uo=6';
}
}, 300);
}
<a href="#" onclick="startIThrown()">Restart iThrown</a>