fix(tauri/asset): better no-server image loading (#1170)

This commit is contained in:
Noah Klayman
2021-01-30 18:31:41 -08:00
committed by GitHub
parent 4491c70790
commit 56757b5e83
2 changed files with 12 additions and 8 deletions

View File

@@ -141,11 +141,7 @@ if (!String.prototype.startsWith) {
function (e) {
var target = e.target
while (target != null) {
if (
target.matches
? target.matches('img')
: target.msMatchesSelector('img')
) {
if (target.matches('img')) {
window.__TAURI__.loadAsset(target.src, 'image').then(function (img) {
target.src = img
})

View File

@@ -46,16 +46,24 @@ pub fn load(
}
if asset_type == "image" {
let ext = if asset.ends_with("gif") {
let mime_type = if asset.ends_with("gif") {
"gif"
} else if asset.ends_with("apng") {
"apng"
} else if asset.ends_with("png") {
"png"
} else if asset.ends_with("avif") {
"avif"
} else if asset.ends_with("webp") {
"webp"
} else if asset.ends_with("svg") {
"svg+xml"
} else {
"jpeg"
};
Ok(format!(
r#""data:image/{};base64,{}""#,
ext,
r#"data:image/{};base64,{}"#,
mime_type,
base64::encode(&read_asset.expect("Failed to read asset type").into_owned())
))
} else {