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()
}

如果空白

那就是权限没有开

相关推荐
码银2 小时前
docsify 本地部署完整配置模板 || 将md文件放到网页上展示
html·docsify·md
火鸟22 小时前
给予虚拟成像台尝鲜版十之二,完善支持 HTML 原型模式
前端·html·原型模式·通用代码生成器·给予虚拟成像台·快速原型·rust语言
程序猿_极客4 小时前
【期末网页设计作业】HTML+CSS+JS 美食分享主题网站设计与实现(附源码)
javascript·css·html
BBB努力学习程序设计6 小时前
Canvas绘图基础:坐标、线条与圆形的艺术
前端·html
BBB努力学习程序设计6 小时前
不只是设计师的工具:Photoshop在前端开发中的高频操作指南
前端·html
denggun123457 小时前
ios-WebP
macos·php·cocoa
Digitally8 小时前
解决 iPhone 和 Mac 之间备忘录无法同步的9种方法
macos·ios·iphone
小妖同学学AI8 小时前
Mac远程控制新篇章:UU远程被控端深度测评
macos·远程控制·uu
xiaaaa.z9 小时前
macos HbuildX 使用cli脚本创建uniapp 运行时报错“cli项目运行依赖本地的Nodejs环境,请先安装并配置到系统环境变量后重试。”
macos·uni-app
超级罗伯特10 小时前
大屏自适应,响应式布局,亲测有效
前端·javascript·html·大屏·驾驶舱