小程序--引用外部js方法

1、外部文件 /util/util.js

function convertToStarsArray(stars) {  //把星级存到数组中  
  var num = stars.toString().substring(0, 1);
  var array = [];
  for (var i = 1; i <= 5; i++) {
    if (i <= num) {
      array.push(1);
    }
    else {
      array.push(0);
    }
  }
  return array;
}

module.exports = {
  convertToStarsArray: convertToStarsArray
}

2、pages/movies/movies.wxml

var util = require('../../utils/util.js')
...
 processDoubanData: function (moviesDouban, settedKey, categoryTitle){
  var movies=[];//定义数组存储处理数据的容器
  for (var idx in moviesDouban.subjects) {
      var subject = moviesDouban.subjects[idx];
      //文章标题
      var title = subject.title;
      if (title.length >= 6) {
        title = title.substring(0, 6) + "...";//截取文章前六个字
      }
      var temp = { //所有数据放到temp中
        stars: util.convertToStarsArray(subject.rating.stars),
        title: title,
        average: subject.rating.average,
        coverageUrl: subject.images.large,
        movieId: subject.id
      }
      movies.push(temp) //所有数据存储到movies中
      var readyData = {};
      readyData[settedKey] = {
        categoryTitle: categoryTitle,
        movies: movies
      }
      this.setData(readyData);
  }
}

3、星级评分思路:把分数转换为数组 如共5星 若有3星 则数组为[1,1,0]

    wxml文件使用wx.if进行判断并显示

<view class="stars">
        <block wx:for="{{stars}}" wx:for-item="i">
              <image wx:if="{{i}}" src="/images/icon/star.png"></image>
              <image wx:else src="/images/icon/none-star.png"></image>
        </block>
     </view>

注意:data传值新方法 (movie传star)

<template is="starsTemplate" data="{{stars:stars, score: average}}"/>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值