Commit d7930642 authored by wangxuelai's avatar wangxuelai

''

parent 7e5d9d80
......@@ -123,6 +123,13 @@
"index"
]
},
{
"root": "src/pages/invitationcard",
"name": "invitationcard",
"pages": [
"index"
]
},
{
"root": "src/pages/invitation",
"name": "invitation",
......
/* global Component wx */
Component({
properties: {
painting: {
type: Object,
value: {view: []},
observer (newVal, oldVal) {
if (!this.data.isPainting) {
if (JSON.stringify(newVal) !== JSON.stringify(oldVal)) {
if (newVal && newVal.width && newVal.height) {
this.setData({
showCanvas: true,
isPainting: true
})
this.readyPigment()
}
} else {
if (newVal && newVal.mode !== 'same') {
this.triggerEvent('getImage', {errMsg: 'canvasdrawer:samme params'})
}
}
}
}
}
},
data: {
showCanvas: false,
width: 100,
height: 100,
tempFileList: [],
isPainting: false
},
ctx: null,
cache: {},
ready () {
wx.removeStorageSync('canvasdrawer_pic_cache')
this.cache = wx.getStorageSync('canvasdrawer_pic_cache') || {}
this.ctx = wx.createCanvasContext('canvasdrawer', this)
},
methods: {
readyPigment () {
const { width, height, views } = this.data.painting
this.setData({
width,
height
})
const inter = setInterval(() => {
if (this.ctx) {
clearInterval(inter)
this.ctx.clearActions()
this.ctx.save()
this.getImagesInfo(views)
}
}, 100)
},
getImagesInfo (views) {
const imageList = []
for (let i = 0; i < views.length; i++) {
if (views[i].type === 'image') {
imageList.push(this.getImageInfo(views[i].url))
}
}
const loadTask = []
for (let i = 0; i < Math.ceil(imageList.length / 8); i++) {
loadTask.push(new Promise((resolve, reject) => {
Promise.all(imageList.splice(i * 8, 8)).then(res => {
resolve(res)
}).catch(res => {
reject(res)
})
}))
}
Promise.all(loadTask).then(res => {
let tempFileList = []
for (let i = 0; i < res.length; i++) {
tempFileList = tempFileList.concat(res[i])
}
this.setData({
tempFileList
})
this.startPainting()
})
},
startPainting () {
const { tempFileList, painting: { views } } = this.data
for (let i = 0, imageIndex = 0; i < views.length; i++) {
if (views[i].type === 'image') {
this.drawImage({
...views[i],
url: tempFileList[imageIndex]
})
imageIndex++
} else if (views[i].type === 'text') {
if (!this.ctx.measureText) {
wx.showModal({
title: '提示',
content: '当前微信版本过低,无法使用 measureText 功能,请升级到最新微信版本后重试。'
})
this.triggerEvent('getImage', {errMsg: 'canvasdrawer:version too low'})
return
} else {
this.drawText(views[i])
}
} else if (views[i].type === 'rect') {
this.drawRect(views[i])
}
}
this.ctx.draw(false, () => {
wx.setStorageSync('canvasdrawer_pic_cache', this.cache)
const system = wx.getSystemInfoSync().system
if (/ios/i.test(system)) {
this.saveImageToLocal()
} else {
// 延迟保存图片,解决安卓生成图片错位bug。
setTimeout(() => {
this.saveImageToLocal()
}, 800)
}
})
},
drawImage (params) {
this.ctx.save()
const { url, top = 0, left = 0, width = 0, height = 0, borderRadius = 0, deg = 0 } = params
// if (borderRadius) {
// this.ctx.beginPath()
// this.ctx.arc(left + borderRadius, top + borderRadius, borderRadius, 0, 2 * Math.PI)
// this.ctx.clip()
// this.ctx.drawImage(url, left, top, width, height)
// } else {
if (deg !== 0) {
this.ctx.translate(left + width/2, top + height/2)
this.ctx.rotate(deg * Math.PI / 180)
this.ctx.drawImage(url, -width/2, -height/2, width, height)
} else {
this.ctx.drawImage(url, left, top, width, height)
}
// }
this.ctx.restore()
},
drawText (params) {
this.ctx.save()
const {
MaxLineNumber = 2,
breakWord = false,
color = 'black',
content = '',
fontSize = 16,
top = 0,
left = 0,
lineHeight = 20,
textAlign = 'left',
width,
bolder = false,
textDecoration = 'none'
} = params
this.ctx.beginPath()
this.ctx.setTextBaseline('top')
this.ctx.setTextAlign(textAlign)
this.ctx.setFillStyle(color)
this.ctx.setFontSize(fontSize)
if (!breakWord) {
this.ctx.fillText(content, left, top)
this.drawTextLine(left, top, textDecoration, color, fontSize, content)
} else {
let fillText = ''
let fillTop = top
let lineNum = 1
for (let i = 0; i < content.length; i++) {
fillText += [content[i]]
if (this.ctx.measureText(fillText).width > width) {
if (lineNum === MaxLineNumber) {
if (i !== content.length) {
fillText = fillText.substring(0, fillText.length - 1) + '...'
this.ctx.fillText(fillText, left, fillTop)
this.drawTextLine(left, fillTop, textDecoration, color, fontSize, fillText)
fillText = ''
break
}
}
this.ctx.fillText(fillText, left, fillTop)
this.drawTextLine(left, fillTop, textDecoration, color, fontSize, fillText)
fillText = ''
fillTop += lineHeight
lineNum ++
}
}
this.ctx.fillText(fillText, left, fillTop)
this.drawTextLine(left, fillTop, textDecoration, color, fontSize, fillText)
}
this.ctx.restore()
if (bolder) {
this.drawText({
...params,
left: left + 0.3,
top: top + 0.3,
bolder: false,
textDecoration: 'none'
})
}
},
drawTextLine (left, top, textDecoration, color, fontSize, content) {
if (textDecoration === 'underline') {
this.drawRect({
background: color,
top: top + fontSize * 1.2,
left: left - 1,
width: this.ctx.measureText(content).width + 3,
height: 1
})
} else if (textDecoration === 'line-through') {
this.drawRect({
background: color,
top: top + fontSize * 0.6,
left: left - 1,
width: this.ctx.measureText(content).width + 3,
height: 1
})
}
},
drawRect (params) {
this.ctx.save()
const { background, top = 0, left = 0, width = 0, height = 0 } = params
this.ctx.setFillStyle(background)
this.ctx.fillRect(left, top, width, height)
this.ctx.restore()
},
getImageInfo (url) {
return new Promise((resolve, reject) => {
if (this.cache[url]) {
resolve(this.cache[url])
} else {
const objExp = new RegExp(/^http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w- .\/?%&=]*)?/)
if (objExp.test(url)) {
wx.getImageInfo({
src: url,
complete: res => {
if (res.errMsg === 'getImageInfo:ok') {
this.cache[url] = res.path
resolve(res.path)
} else {
this.triggerEvent('getImage', {errMsg: 'canvasdrawer:download fail'})
reject(new Error('getImageInfo fail'))
}
}
})
} else {
this.cache[url] = url
resolve(url)
}
}
})
},
saveImageToLocal () {
const { width, height } = this.data
wx.canvasToTempFilePath({
x: 0,
y: 0,
width,
height,
canvasId: 'canvasdrawer',
complete: res => {
if (res.errMsg === 'canvasToTempFilePath:ok') {
this.setData({
showCanvas: false,
isPainting: false,
tempFileList: []
})
this.triggerEvent('getImage', {tempFilePath: res.tempFilePath, errMsg: 'canvasdrawer:ok'})
} else {
this.triggerEvent('getImage', {errMsg: 'canvasdrawer:fail'})
}
}
}, this)
}
}
})
{
"component": true
}
\ No newline at end of file
<canvas canvas-id="canvasdrawer" style="width:{{width}}px;height:{{height}}px;" class="board" wx:if="{{showCanvas}}"></canvas>
\ No newline at end of file
.board {
position: fixed;
top: 2000rpx;
}
\ No newline at end of file
images/2b/circleindex/dianpin.png

2.02 KB | W: | H:

images/2b/circleindex/dianpin.png

840 Bytes | W: | H:

images/2b/circleindex/dianpin.png
images/2b/circleindex/dianpin.png
images/2b/circleindex/dianpin.png
images/2b/circleindex/dianpin.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/tabbar/class.png

561 Bytes | W: | H:

images/2b/tabbar/class.png

261 Bytes | W: | H:

images/2b/tabbar/class.png
images/2b/tabbar/class.png
images/2b/tabbar/class.png
images/2b/tabbar/class.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/tabbar/classactive.png

6.59 KB | W: | H:

images/2b/tabbar/classactive.png

2.09 KB | W: | H:

images/2b/tabbar/classactive.png
images/2b/tabbar/classactive.png
images/2b/tabbar/classactive.png
images/2b/tabbar/classactive.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/tabbar/message.png

1.27 KB | W: | H:

images/2b/tabbar/message.png

535 Bytes | W: | H:

images/2b/tabbar/message.png
images/2b/tabbar/message.png
images/2b/tabbar/message.png
images/2b/tabbar/message.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/tabbar/messageactive.png

3.76 KB | W: | H:

images/2b/tabbar/messageactive.png

1.29 KB | W: | H:

images/2b/tabbar/messageactive.png
images/2b/tabbar/messageactive.png
images/2b/tabbar/messageactive.png
images/2b/tabbar/messageactive.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/tabbar/ucenter.png

1.63 KB | W: | H:

images/2b/tabbar/ucenter.png

677 Bytes | W: | H:

images/2b/tabbar/ucenter.png
images/2b/tabbar/ucenter.png
images/2b/tabbar/ucenter.png
images/2b/tabbar/ucenter.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/tabbar/ucenteractive.png

3.84 KB | W: | H:

images/2b/tabbar/ucenteractive.png

1.71 KB | W: | H:

images/2b/tabbar/ucenteractive.png
images/2b/tabbar/ucenteractive.png
images/2b/tabbar/ucenteractive.png
images/2b/tabbar/ucenteractive.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/themeindex/date-icon.png

1.5 KB | W: | H:

images/2b/themeindex/date-icon.png

888 Bytes | W: | H:

images/2b/themeindex/date-icon.png
images/2b/themeindex/date-icon.png
images/2b/themeindex/date-icon.png
images/2b/themeindex/date-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/themeindex/edit-icon.png

380 Bytes | W: | H:

images/2b/themeindex/edit-icon.png

296 Bytes | W: | H:

images/2b/themeindex/edit-icon.png
images/2b/themeindex/edit-icon.png
images/2b/themeindex/edit-icon.png
images/2b/themeindex/edit-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/themeindex/rank-icon.png

323 Bytes | W: | H:

images/2b/themeindex/rank-icon.png

258 Bytes | W: | H:

images/2b/themeindex/rank-icon.png
images/2b/themeindex/rank-icon.png
images/2b/themeindex/rank-icon.png
images/2b/themeindex/rank-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/themeindex/share-icon.png

1.09 KB | W: | H:

images/2b/themeindex/share-icon.png

655 Bytes | W: | H:

images/2b/themeindex/share-icon.png
images/2b/themeindex/share-icon.png
images/2b/themeindex/share-icon.png
images/2b/themeindex/share-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/themeindex/student-icon.png

1.25 KB | W: | H:

images/2b/themeindex/student-icon.png

739 Bytes | W: | H:

images/2b/themeindex/student-icon.png
images/2b/themeindex/student-icon.png
images/2b/themeindex/student-icon.png
images/2b/themeindex/student-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2b/themeindex/w-icon.png

1.34 KB | W: | H:

images/2b/themeindex/w-icon.png

568 Bytes | W: | H:

images/2b/themeindex/w-icon.png
images/2b/themeindex/w-icon.png
images/2b/themeindex/w-icon.png
images/2b/themeindex/w-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/circleindex/circlricon.png

3.56 KB | W: | H:

images/2c/circleindex/circlricon.png

1.79 KB | W: | H:

images/2c/circleindex/circlricon.png
images/2c/circleindex/circlricon.png
images/2c/circleindex/circlricon.png
images/2c/circleindex/circlricon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/circleindex/isclock.png

2.82 KB | W: | H:

images/2c/circleindex/isclock.png

1.05 KB | W: | H:

images/2c/circleindex/isclock.png
images/2c/circleindex/isclock.png
images/2c/circleindex/isclock.png
images/2c/circleindex/isclock.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/circleindex/itemicon.png

1.79 KB | W: | H:

images/2c/circleindex/itemicon.png

912 Bytes | W: | H:

images/2c/circleindex/itemicon.png
images/2c/circleindex/itemicon.png
images/2c/circleindex/itemicon.png
images/2c/circleindex/itemicon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/circleindex/locate.png

991 Bytes | W: | H:

images/2c/circleindex/locate.png

491 Bytes | W: | H:

images/2c/circleindex/locate.png
images/2c/circleindex/locate.png
images/2c/circleindex/locate.png
images/2c/circleindex/locate.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/circleindex/notclock.png

2.77 KB | W: | H:

images/2c/circleindex/notclock.png

1.01 KB | W: | H:

images/2c/circleindex/notclock.png
images/2c/circleindex/notclock.png
images/2c/circleindex/notclock.png
images/2c/circleindex/notclock.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/circleindex/phoneicon.png

5.55 KB | W: | H:

images/2c/circleindex/phoneicon.png

2.94 KB | W: | H:

images/2c/circleindex/phoneicon.png
images/2c/circleindex/phoneicon.png
images/2c/circleindex/phoneicon.png
images/2c/circleindex/phoneicon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/circleindex/postericon.png

4.84 KB | W: | H:

images/2c/circleindex/postericon.png

2.41 KB | W: | H:

images/2c/circleindex/postericon.png
images/2c/circleindex/postericon.png
images/2c/circleindex/postericon.png
images/2c/circleindex/postericon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/circleindex/rankList.png

1.75 KB | W: | H:

images/2c/circleindex/rankList.png

850 Bytes | W: | H:

images/2c/circleindex/rankList.png
images/2c/circleindex/rankList.png
images/2c/circleindex/rankList.png
images/2c/circleindex/rankList.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/circleindex/rili.png

15.5 KB | W: | H:

images/2c/circleindex/rili.png

4.31 KB | W: | H:

images/2c/circleindex/rili.png
images/2c/circleindex/rili.png
images/2c/circleindex/rili.png
images/2c/circleindex/rili.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/circleindex/upicon.png

4.03 KB | W: | H:

images/2c/circleindex/upicon.png

1.92 KB | W: | H:

images/2c/circleindex/upicon.png
images/2c/circleindex/upicon.png
images/2c/circleindex/upicon.png
images/2c/circleindex/upicon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/common/likenotice.png

4.69 KB | W: | H:

images/2c/common/likenotice.png

1.59 KB | W: | H:

images/2c/common/likenotice.png
images/2c/common/likenotice.png
images/2c/common/likenotice.png
images/2c/common/likenotice.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/common/themenotice.png

4.22 KB | W: | H:

images/2c/common/themenotice.png

1.32 KB | W: | H:

images/2c/common/themenotice.png
images/2c/common/themenotice.png
images/2c/common/themenotice.png
images/2c/common/themenotice.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/invitation/bg.png

443 KB | W: | H:

images/2c/invitation/bg.png

93.5 KB | W: | H:

images/2c/invitation/bg.png
images/2c/invitation/bg.png
images/2c/invitation/bg.png
images/2c/invitation/bg.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/rankinglist/daka.png

2.22 KB | W: | H:

images/2c/rankinglist/daka.png

904 Bytes | W: | H:

images/2c/rankinglist/daka.png
images/2c/rankinglist/daka.png
images/2c/rankinglist/daka.png
images/2c/rankinglist/daka.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/rankinglist/dianzan.png

2 KB | W: | H:

images/2c/rankinglist/dianzan.png

826 Bytes | W: | H:

images/2c/rankinglist/dianzan.png
images/2c/rankinglist/dianzan.png
images/2c/rankinglist/dianzan.png
images/2c/rankinglist/dianzan.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/rankinglist/empty.png

54.5 KB | W: | H:

images/2c/rankinglist/empty.png

14.5 KB | W: | H:

images/2c/rankinglist/empty.png
images/2c/rankinglist/empty.png
images/2c/rankinglist/empty.png
images/2c/rankinglist/empty.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/rankinglist/no1.png

8.94 KB | W: | H:

images/2c/rankinglist/no1.png

3.58 KB | W: | H:

images/2c/rankinglist/no1.png
images/2c/rankinglist/no1.png
images/2c/rankinglist/no1.png
images/2c/rankinglist/no1.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/rankinglist/no2.png

4.07 KB | W: | H:

images/2c/rankinglist/no2.png

1.17 KB | W: | H:

images/2c/rankinglist/no2.png
images/2c/rankinglist/no2.png
images/2c/rankinglist/no2.png
images/2c/rankinglist/no2.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/rankinglist/no3.png

3.85 KB | W: | H:

images/2c/rankinglist/no3.png

1.26 KB | W: | H:

images/2c/rankinglist/no3.png
images/2c/rankinglist/no3.png
images/2c/rankinglist/no3.png
images/2c/rankinglist/no3.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/rankinglist/star.png

29.5 KB | W: | H:

images/2c/rankinglist/star.png

6.8 KB | W: | H:

images/2c/rankinglist/star.png
images/2c/rankinglist/star.png
images/2c/rankinglist/star.png
images/2c/rankinglist/star.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/rankinglist/themeno1.png

11.4 KB | W: | H:

images/2c/rankinglist/themeno1.png

4.27 KB | W: | H:

images/2c/rankinglist/themeno1.png
images/2c/rankinglist/themeno1.png
images/2c/rankinglist/themeno1.png
images/2c/rankinglist/themeno1.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/rankinglist/themeno2.png

4.83 KB | W: | H:

images/2c/rankinglist/themeno2.png

1.54 KB | W: | H:

images/2c/rankinglist/themeno2.png
images/2c/rankinglist/themeno2.png
images/2c/rankinglist/themeno2.png
images/2c/rankinglist/themeno2.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/rankinglist/themeno3.png

4.63 KB | W: | H:

images/2c/rankinglist/themeno3.png

1.7 KB | W: | H:

images/2c/rankinglist/themeno3.png
images/2c/rankinglist/themeno3.png
images/2c/rankinglist/themeno3.png
images/2c/rankinglist/themeno3.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/tabbar/class.png

1.37 KB | W: | H:

images/2c/tabbar/class.png

551 Bytes | W: | H:

images/2c/tabbar/class.png
images/2c/tabbar/class.png
images/2c/tabbar/class.png
images/2c/tabbar/class.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/tabbar/classactive.png

8.33 KB | W: | H:

images/2c/tabbar/classactive.png

2.21 KB | W: | H:

images/2c/tabbar/classactive.png
images/2c/tabbar/classactive.png
images/2c/tabbar/classactive.png
images/2c/tabbar/classactive.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/tabbar/home.png

3.97 KB | W: | H:

images/2c/tabbar/home.png

1.26 KB | W: | H:

images/2c/tabbar/home.png
images/2c/tabbar/home.png
images/2c/tabbar/home.png
images/2c/tabbar/home.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/tabbar/homeactive.png

11.2 KB | W: | H:

images/2c/tabbar/homeactive.png

4.33 KB | W: | H:

images/2c/tabbar/homeactive.png
images/2c/tabbar/homeactive.png
images/2c/tabbar/homeactive.png
images/2c/tabbar/homeactive.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/tabbar/message.png

2.43 KB | W: | H:

images/2c/tabbar/message.png

1013 Bytes | W: | H:

images/2c/tabbar/message.png
images/2c/tabbar/message.png
images/2c/tabbar/message.png
images/2c/tabbar/message.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/tabbar/messageactive.png

9.43 KB | W: | H:

images/2c/tabbar/messageactive.png

2.6 KB | W: | H:

images/2c/tabbar/messageactive.png
images/2c/tabbar/messageactive.png
images/2c/tabbar/messageactive.png
images/2c/tabbar/messageactive.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/tabbar/ucenter.png

3.55 KB | W: | H:

images/2c/tabbar/ucenter.png

1.19 KB | W: | H:

images/2c/tabbar/ucenter.png
images/2c/tabbar/ucenter.png
images/2c/tabbar/ucenter.png
images/2c/tabbar/ucenter.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/tabbar/ucenteractive.png

12.2 KB | W: | H:

images/2c/tabbar/ucenteractive.png

5.05 KB | W: | H:

images/2c/tabbar/ucenteractive.png
images/2c/tabbar/ucenteractive.png
images/2c/tabbar/ucenteractive.png
images/2c/tabbar/ucenteractive.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/bigyes.png

3.58 KB | W: | H:

images/2c/themeindex/bigyes.png

1.94 KB | W: | H:

images/2c/themeindex/bigyes.png
images/2c/themeindex/bigyes.png
images/2c/themeindex/bigyes.png
images/2c/themeindex/bigyes.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/can.png

1.78 KB | W: | H:

images/2c/themeindex/can.png

1.23 KB | W: | H:

images/2c/themeindex/can.png
images/2c/themeindex/can.png
images/2c/themeindex/can.png
images/2c/themeindex/can.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/dark.png

40.8 KB | W: | H:

images/2c/themeindex/dark.png

21.6 KB | W: | H:

images/2c/themeindex/dark.png
images/2c/themeindex/dark.png
images/2c/themeindex/dark.png
images/2c/themeindex/dark.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/empty-icon.png

23 KB | W: | H:

images/2c/themeindex/empty-icon.png

19.4 KB | W: | H:

images/2c/themeindex/empty-icon.png
images/2c/themeindex/empty-icon.png
images/2c/themeindex/empty-icon.png
images/2c/themeindex/empty-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/friend-icon.png

1.94 KB | W: | H:

images/2c/themeindex/friend-icon.png

1.39 KB | W: | H:

images/2c/themeindex/friend-icon.png
images/2c/themeindex/friend-icon.png
images/2c/themeindex/friend-icon.png
images/2c/themeindex/friend-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/img-iocn.png

1.25 KB | W: | H:

images/2c/themeindex/img-iocn.png

782 Bytes | W: | H:

images/2c/themeindex/img-iocn.png
images/2c/themeindex/img-iocn.png
images/2c/themeindex/img-iocn.png
images/2c/themeindex/img-iocn.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/light-icon.png

35.8 KB | W: | H:

images/2c/themeindex/light-icon.png

20.5 KB | W: | H:

images/2c/themeindex/light-icon.png
images/2c/themeindex/light-icon.png
images/2c/themeindex/light-icon.png
images/2c/themeindex/light-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/rank-icon.png

917 Bytes | W: | H:

images/2c/themeindex/rank-icon.png

664 Bytes | W: | H:

images/2c/themeindex/rank-icon.png
images/2c/themeindex/rank-icon.png
images/2c/themeindex/rank-icon.png
images/2c/themeindex/rank-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/risedate.png

16.4 KB | W: | H:

images/2c/themeindex/risedate.png

13.5 KB | W: | H:

images/2c/themeindex/risedate.png
images/2c/themeindex/risedate.png
images/2c/themeindex/risedate.png
images/2c/themeindex/risedate.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/taskc.png

1.36 KB | W: | H:

images/2c/themeindex/taskc.png

856 Bytes | W: | H:

images/2c/themeindex/taskc.png
images/2c/themeindex/taskc.png
images/2c/themeindex/taskc.png
images/2c/themeindex/taskc.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/themeindex/yes-icon.png

1.78 KB | W: | H:

images/2c/themeindex/yes-icon.png

1.1 KB | W: | H:

images/2c/themeindex/yes-icon.png
images/2c/themeindex/yes-icon.png
images/2c/themeindex/yes-icon.png
images/2c/themeindex/yes-icon.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/ucenter/advice.png

3.18 KB | W: | H:

images/2c/ucenter/advice.png

1.21 KB | W: | H:

images/2c/ucenter/advice.png
images/2c/ucenter/advice.png
images/2c/ucenter/advice.png
images/2c/ucenter/advice.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/ucenter/arrowright.png

349 Bytes | W: | H:

images/2c/ucenter/arrowright.png

277 Bytes | W: | H:

images/2c/ucenter/arrowright.png
images/2c/ucenter/arrowright.png
images/2c/ucenter/arrowright.png
images/2c/ucenter/arrowright.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/ucenter/bg.png

54.7 KB | W: | H:

images/2c/ucenter/bg.png

17.5 KB | W: | H:

images/2c/ucenter/bg.png
images/2c/ucenter/bg.png
images/2c/ucenter/bg.png
images/2c/ucenter/bg.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/ucenter/managerenter.png

3.24 KB | W: | H:

images/2c/ucenter/managerenter.png

1.36 KB | W: | H:

images/2c/ucenter/managerenter.png
images/2c/ucenter/managerenter.png
images/2c/ucenter/managerenter.png
images/2c/ucenter/managerenter.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/ucenter/myachievenment.png

3.69 KB | W: | H:

images/2c/ucenter/myachievenment.png

1.78 KB | W: | H:

images/2c/ucenter/myachievenment.png
images/2c/ucenter/myachievenment.png
images/2c/ucenter/myachievenment.png
images/2c/ucenter/myachievenment.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/ucenter/myclass.png

3.61 KB | W: | H:

images/2c/ucenter/myclass.png

1.71 KB | W: | H:

images/2c/ucenter/myclass.png
images/2c/ucenter/myclass.png
images/2c/ucenter/myclass.png
images/2c/ucenter/myclass.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/ucenter/myclock.png

1.96 KB | W: | H:

images/2c/ucenter/myclock.png

916 Bytes | W: | H:

images/2c/ucenter/myclock.png
images/2c/ucenter/myclock.png
images/2c/ucenter/myclock.png
images/2c/ucenter/myclock.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/ucenter/mylike.png

2.9 KB | W: | H:

images/2c/ucenter/mylike.png

1.5 KB | W: | H:

images/2c/ucenter/mylike.png
images/2c/ucenter/mylike.png
images/2c/ucenter/mylike.png
images/2c/ucenter/mylike.png
  • 2-up
  • Swipe
  • Onion skin
images/2c/ucenter/myscore.png

3.06 KB | W: | H:

images/2c/ucenter/myscore.png

1.38 KB | W: | H:

images/2c/ucenter/myscore.png
images/2c/ucenter/myscore.png
images/2c/ucenter/myscore.png
images/2c/ucenter/myscore.png
  • 2-up
  • Swipe
  • Onion skin
......@@ -41,7 +41,7 @@
"list": []
},
"miniprogram": {
"current": 131,
"current": 133,
"list": [
{
"id": 0,
......@@ -973,6 +973,13 @@
"pathName": "src/pages/beforeinvitation/index",
"query": "tid=186&consumerId=111",
"scene": null
},
{
"id": 133,
"name": "邀请卡页面",
"pathName": "src/pages/invitationcard/index",
"query": "tid=186",
"scene": null
}
]
}
......
This diff is collapsed.
{
"navigationBarTitleText": "邀请好友一起学习",
"usingComponents": {
"canvasdrawer": "/components/canvasdrawer/canvasdrawer"
}
}
\ No newline at end of file
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment