모바일 애플리케이션의 급속한 발전으로 인해 크로스 플랫폼 개발 프레임워크가 개발자들 사이에서 점점 더 대중화되고 있습니다. Uniapp은 Vue.js 프레임워크를 기반으로 한 크로스 플랫폼 개발 프레임워크로서 현재 시장에서 많은 주목을 받고 있습니다. 하지만 유니앱에서는 코드가 웹 브라우저에서 실행되고 있는지, 앱에서 실행되고 있는지 확인해야 할 때가 있습니다. 이번 글에서는 유니앱에서 해당 코드가 앱에서만 실행되는지 확인하는 방법을 소개하겠습니다.
첫 번째 방법: 내비게이션 바를 사용하여 표시 및 숨기기
유니앱의 내비게이션 바는 앱 내비게이션 바와 웹 내비게이션 바의 두 가지 방법으로 구분됩니다. 프로젝트에서는 이 기능을 사용하여 판단을 내릴 수 있습니다.
코드는 다음과 같이 구현됩니다.
uni.onNavigationBarChange((res) => { if (res.type === 'show') { console.log('在App中运行') } else { console.log('在Web浏览器中运行') } })
앱 측에서는 기본적으로 네비게이션 바가 표시되므로, 네비게이션 바가 표시되면 코드는 앱에서 실행
명령문을 실행합니다. 웹 브라우저에서 접속하면 기본적으로 탐색 표시줄이 숨겨집니다. 웹 브라우저에서 실행
문을 실행하세요. 참고: 이 방법을 사용하려면 페이지 내에서 탐색 모음을 활성화해야 합니다. 在App中运行
的语句。当在Web浏览器中访问时,导航栏默认是隐藏的,执行在Web浏览器中运行
语句。注意:此方法需要在页面内启用导航栏。
第二种方法:利用uni.getSystemInfoSync
uni.getSystemInfoSync
方法可以获取设备信息,通过获取设备信息中的platform
属性来判断。
代码实现如下:
const systemInfo = uni.getSystemInfoSync() if (systemInfo.platform === 'android' || systemInfo.platform === 'ios') { console.log('在App中运行') } else { console.log('在Web浏览器中运行') }
在App中运行时,platform
属性返回的是android
或者ios
,所以执行在App中运行
的语句,当在Web浏览器中访问时,返回的是h5
,执行在Web浏览器中运行
语句。
第三种方法:利用uni.postMessage
与onmessage
通过向自己页面发送消息,然后在onmessage
中获取消息,通过判断消息来源来确定代码在App或者Web端运行。
代码实现如下:
// 发送消息 uni.postMessage({ from: 'uniapp' }) // 监听消息 window.onmessage = (event) => { if (event.data.from === 'uniapp') { console.log('在App中运行') } else { console.log('在Web浏览器中运行') } }
在App中运行时,postMessage
发送的消息来源为uniapp
,所以执行在App中运行
的语句,当在Web浏览器中访问时,由于没有调用postMessage
uni.getSystemInfoSync
메서드를 사용하여 장치 정보를 가져옵니다. 이는 장치 정보에서 platform
속성을 가져옴으로써 확인할 수 있습니다. 코드는 다음과 같이 구현됩니다. rrreee
App에서 실행 시platform
속성이 android
또는 ios
를 반환하므로 를 실행합니다. > "Run in App"
문은 웹 브라우저에서 액세스할 때 h5
를 반환합니다. "Run in App" 문을 실행하세요. 🎜🎜세 번째 방법: uni.postMessage
및 onmessage
🎜🎜를 사용하여 자신의 페이지에 메시지를 보낸 다음 onmessage
에서 메시지를 가져옵니다. >, 메시지 소스를 판단하여 코드가 앱 측에서 실행되고 있는지 웹 측에서 실행되고 있는지 확인하세요. 🎜🎜코드는 다음과 같이 구현됩니다. 🎜rrreee🎜App에서 실행 시 postMessage
에서 보내는 메시지의 소스가 uniapp
이므로 Run in App을 실행합니다.
문은 웹 브라우저에서 액세스할 때 postMessage
메서드가 호출되지 않으므로 문이 실행되지 않습니다. 🎜🎜요약: 🎜🎜위의 세 가지 방법을 통해 코드가 앱에서만 실행되는지 더 정확하게 판단할 수 있습니다. 실제 개발에서는 프로젝트 요구에 따라 적절한 방법을 선택할 수 있습니다. 첫 번째 방법을 사용할 때는 페이지에서 탐색 표시줄을 활성화해야 합니다. 🎜🎜Uniapp에는 강력한 기능과 특징이 많이 있으며, 이는 크로스 플랫폼 개발에서 인기가 있는 이유 중 하나입니다. 이 글이 Uniapp 개발자들에게 도움이 되기를 바랍니다. 🎜위 내용은 uniapp의 앱에서만 코드가 실행되는지 확인하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!