const util = require('../../utils/util.js')
const app = getApp()
Page({data: {curLang: {},langList: app.globalData.langList},
onShow: function () {this.setData({ curLang: app.globalData.curLang })},
onTapItem: function (e) {
let langObj = e.currentTarget.dataset
wx.setStorageSync('language', langObj)
this.setData({ 'curLang': langObj })
app.globalData.curLang = langObj
wx.switchTab({ url: '/pages/index/index' })}})
const app = getApp()
Page({data:{history:[]},onLoad:function(options){},
onShow:function(){this.setData({history:wx.getStorageSync('history')})},
onTapItem:function(e){wx.reLaunch({url:'/pages/index/index?query=
{e.currentTarget.dataset.query}'})},
onClearHistory: function(){this.setData({history: []})wx.clearStorage('history')},
onHide: function () {},
onUnload: function () {},
onPullDownRefresh: function () {},
onReachBottom: function () {},
onShareAppMessage: function () {}})
import { translate } from '../../utils/api.js'
const app = getApp()
Page({data: {query: '',hideClearIcon: true,result: [],curLang: {}},
onLoad: function (options) {
console.log('onload..')
console.log(options)
if (options.query) {
this.setData({ query: options.query })
this.setData({ 'hideClearIcon': false })}},
onShow: function () {
if (this.data.curLang.lang !== app.globalData.curLang.lang) {
this.setData({ curLang: app.globalData.curLang })
this.onConfirm()}},
onInput: function (e) {
this.setData({ 'query': e.detail.value })
if (this.data.query.length > 0) {
this.setData({ 'hideClearIcon': false })
} else {
this.setData({ 'hideClearIcon': true })}
console.log('focus')},
onTapClose: function () {
this.setData({ query: '', hideClearIcon: true })
this.setData({ result: '' })
console.log('clearAll')},
onConfirm: function () {
if (!this.data.query) return
translate(this.data.query, { from: 'auto', to: this.data.curLang.lang }).then(res => {
this.setData({ 'result': res.trans_result })
let history = wx.getStorageSync('history') || []
history.unshift({ query: this.data.query, result: res.trans_result[0].dst })
history.length = history.length > 10 ? 10 : history.length
wx.setStorageSync('history', history)})}})
import md5 from './md5.min.js'
const appid = ''
const key = ''
function translate(q, { from = 'auto', to = 'auto' } = { from: 'auto', to : 'auto'}) {
return new Promise((resolve, reject) => {
let salt = Date.now()
let sign = md5('${appid}${q}${salt}${key}')
wx.request({
url: 'https://fanyi-api.baidu.com/api/trans/vip/translate',
data: {{}q,from,to,appid,salt,sign},
success(res) {if(res.data && res.data.trans_result) {resolve(res.data)} else {
reject({ status: 'error', msg: 'The translation failed.' })
wx.showToast({title: 'The translation failed.',icon: 'none',duration: 3000})}},
fail(){reject({ status: 'error', msg: 'The translation failed.' })
wx.showToast({title: 'The translation failed.',icon: 'none',duration: 3000})}})})}
module.exports.translate = translate
const formatTime = date => {
const year = date.getFullYear()
const month = date.getMonth() + 1
const day = date.getDate()
const hour = date.getHours()
const minute = date.getMinutes()
const second = date.getSeconds()
return [year, month, day].map(formatNumber).join('/') + ' ' + [hour, minute, second].map(formatNumber).join(':')}
const formatNumber = n => {n = n.toString()return n[1] ? n : '0' + n}
module.exports = {formatTime: formatTime}
App({onLaunch: function () {
this.globalData.curlang = wx.getStorageSync('curLang') || this .globalData.langList[0]},
globalData: {curLang: {},langList: [{
'chs': 'English','lang': 'en','index': 0},{
'chs': 'Zwahili','lang': 'zh','index': 1},{
'chs': 'Japanese','lang': 'jp','index': 2},{
'chs': 'Korean','lang': 'kor','index':3},{
'chs': 'French','lang': 'fra','index':4},{
'chs': 'Spanish','lang':'spa','index': 5},{
'chs': 'Arabic','lang': 'ara','index': 6}]}})
"Accreditations: F0rl, "
YOU ARE READING
My Prog Adventures
SpiritualI am also a programmer. I have been intending to post some of my scripts on here. I can teach math and programming, please reach out to me in conversations, my messages on here isnt working.
