swiftui macOS实现加载本地html文件

swift 复制代码
import SwiftUI
import WebKit

struct ContentView: View {
    var body: some View {
        VStack {
            Text("测试")
            
            HTMLView(htmlFileName: "localfile") // 假设你的本地 HTML 文件名为 index.html
                        .frame(minWidth: 100, minHeight: 100) // 设置 HTMLView 的最小尺寸
        }
        .frame(minWidth: 200, minHeight: 200) // 设置 ContentView 的最小尺寸
    }
}

struct HTMLView: NSViewRepresentable {
    let htmlFileName: String

    func makeNSView(context: Context) -> WKWebView {
        let webView = WKWebView()
        return webView
    }

    func updateNSView(_ nsView: WKWebView, context: Context) {
        if let htmlPath = Bundle.main.url(forResource: htmlFileName, withExtension: "html") {
            let request = URLRequest(url: htmlPath)
            nsView.load(request)
        }
    }
}

struct ContentView_Previews: PreviewProvider {
    static var previews: some View {
        ContentView()
    }
}

#Preview {
    ContentView()
}

如果空白

那就是权限没有开

相关推荐
_OP_CHEN19 小时前
【前端开发之HTML】(三)HTML 常见标签(下):图文、链接与实战,解锁网页交互新姿势!
前端·html·交互·前端开发·网页开发·界面美化
lkbhua莱克瓦241 天前
JavaScript核心语法
开发语言·前端·javascript·笔记·html·ecmascript·javaweb
出了名的洗发水2 天前
mac设置共享文件,win用户也可以访问
macos
superbadguy2 天前
Mac新手入坑
macos
我寄人间雪满头丶2 天前
GitHub 私有仓库 SSH 访问配置 SOP(Mac / Windows 通用)
macos·ssh·github
0思必得02 天前
[Web自动化] Selenium中Select元素操作方法
前端·python·selenium·自动化·html
2501_915918412 天前
iOS App 测试方法,Xcode、TestFlight与克魔(KeyMob)等工具组合使用
android·macos·ios·小程序·uni-app·iphone·xcode
@大迁世界2 天前
停止使用 innerHTML:3 种安全渲染 HTML 的替代方案
开发语言·前端·javascript·安全·html
新手村领路人2 天前
macos如何查看修改系统变量或用户变量
macos
旭日跑马踏云飞2 天前
【本地玩AI】在macOS+AppleSilicon安装ComfyUI
人工智能·macos