小程序插入激励视频广告例子

鼓捣了一段时间,终于算是明白了,现在想想确实很简单,毕竟只是函数与函数调用的问题。
首先设置需要定义广告函数,在网上看到的很多都在把他直接加在了onload函数里面,但是对于小白来言,处理不好与其他之间事件的关系,导致出错。所以我直接定义了一个广告加载函数。
首先在.js文件page上方定义videoAd,

var videoAd = null;

在.js页面里

//加载激励广告
  adGet: function () {

    if (qq.createRewardedVideoAd) {
      // 加载激励视频广告
      videoAd = qq.createRewardedVideoAd({
        adUnitId: 'egffhghfhfgfag7'//你的广告key
      })
      //捕捉错误
      videoAd.onError(err => {
        // 进行适当的提示
      })
      // 监听关闭
      videoAd.onClose((status) => {
        if (status && status.isEnded || status === undefined) {
          // 正常播放结束,下发奖励
          // continue you code
         

        } else {
          // 播放中途退出,进行提示
        }
      })
    }
  },

有的教程说需要加入到onload事件函数中,我试了试好像不用,在后面直接调用就可以了。
然后就是创建点击事件函数了。

//激励广告展示,函数名称是随意的,和前面对应就行了。
  openVideoAd() {
    console.log('打开激励视频');

    qq.showToast({
      title: '广告完成后跳转至空间',
      icon: 'none',
      duration: 2000
    });
    this.adGet();//这个地方就是调用了广告函数,然后直接展示

    // 在合适的位置打开广告
    if (videoAd) {
      videoAd.show().catch(err => {
        // 失败重试
        videoAd.load()
          .then(() => videoAd.show())
      })
    }
  },

现在我们只需要在wxml的按钮上添加点击事件就可以实现了。

<button class="goodbutton" hover-class="hover" bindtap="openVideoAd">广告展示</button>

这样就完美完成了点击响应插屏广告了

在这里插入图片描述

根据您提供的代码,这是一个uni-app页面的生命周期函数`onLoad`和`data`数据对象。 如果您想在uni-app页面中实现分页展示列表数据,您可以按照以下步骤进行操作: 1. 在`data`对象中定义一个`list`数组用于存储列表数据。 2. 在`data`对象中定义一个`page`变量用于存储当前页数,默认为1。 3. 在`data`对象中定义一个`pageSize`变量用于存储每页显示的数据数量。 4. 在`onLoad`生命周期函数中,通过调用接口获取总数据量和第一页的数据,并将数据存储到`list`数组中。 5. 在页面中使用`v-for`指令遍历`list`数组,展示列表数据。 6. 在页面中添加一个上拉加载更多的事件监听函数,当滚动到页面底部时触发该函数。 7. 在上拉加载更多的事件监听函数中,将`page`变量加1,然后调用接口获取下一页的数据,并将数据追加到`list`数组中。 以下是一个示例代码,演示了如何实现分页展示列表数据: ```vue <template> <view> <view v-for="item in list" :key="item.id"> <!-- 展示列表数据 --> </view> </view> </template> <script> export default { data() { return { list: [], // 列表数据 page: 1, // 当前页数 pageSize: 10, // 每页显示的数据数量 }; }, onLoad(option) { this.getListData(); }, methods: { getListData() { // 调用接口获取列表数据 // 根据接口返回的数据格式进行处理 // 假设接口返回的数据格式为 { total: 100, data: [...] } uni.getStorage({ key: 'userInfo', success: (res) => { let Uid = res.data.Uid; console.log('liceoption:', Uid); uni.$api.user .Productlicense({ Uid: Uid, page: this.page, pageSize: this.pageSize, }) .then((Res) => { console.log('Res:', Res); const data = Res.data.Data; const total = Res.data.total; this.list = this.list.concat(data); // 判断是否还有更多数据需要加载 if (this.list.length < total) { this.page += 1; this.getListData(); } }); }, }); }, }, }; </script> ``` 这是一个基本的分页展示列表数据的示例,您可以根据实际需求进行修改和优化。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值