需要用到的组件:web-view
web-view 是一个 web 浏览器组件,可以用来承载网页的容器,会自动铺满整个页面(nvue 使用需要手动指定宽高)。
注意事项:
- 小程序仅支持加载网络网页,不支持本地html
- 补充说明:app-vue下web-view组件不支持自定义样式,而v-show的本质是改变组件的样式。即组件支持v-if而不是支持v-show。
- 小程序端 web-view 组件一定有原生导航栏,下面一定是全屏的 web-view 组件,navigationStyle: custom 对 web-view 组件无效。
- App 端使用 uni.web-view.js 的最低版为 uni.webview.1.5.2.js
- App 平台同时支持网络网页和本地网页,但本地网页及相关资源(js、css等文件)必须放在 uni-app
- 项目根目录->hybrid->html 文件夹下或者 static 目录下,如下为一个加载本地网页的uni-app项目文件目录示例:
- nvue web-view 必须指定样式宽高
- V3 编译模式,网页向应用 postMessage 为实时消息
- app-nvue web-view 默认没有大小,可以通过样式设置大小,如果想充满整个窗口,设置 flex: 1 即可,标题栏不会自动显示 web-view 页面中的 title。如果想充满整个窗口且想要显示标题推荐使用 vue 页面的 web-view(默认充满屏幕不可控制大小), 想自定义 web-view 大小使用 nvue web-view
1、创建目录结构
2、在index.vue中使用:两种方式。网络链接URL,或者本地的HTML文件。
<template>
<view class="warp">
<web-view :src="url"></web-view>
</view>
</template>
<script>
export default {
data() {
return {
url: '',
}
},
onShow() {
let access_token = uni.getStorageSync('access_token');
// 本地html文件
this.url="/hybrid/html/index.html?access_token=" + access_token;
//网络链接地址
//this.url = "http://m.hctech666.top/webview?access_token=" + access_token;
},
}
</script>