dev_cs
hjm 5 years ago
parent 5e5e7e21bf
commit fd90587a0d

@ -9,7 +9,7 @@ import {
Route, Route,
Switch Switch
} from 'react-router-dom'; } from 'react-router-dom';
import axios from 'axios';
import '@icedesign/base/dist/ICEDesignBase.css'; import '@icedesign/base/dist/ICEDesignBase.css';
import '@icedesign/base/index.scss'; import '@icedesign/base/index.scss';
@ -37,7 +37,7 @@ import {MuiThemeProvider, createMuiTheme} from 'material-ui/styles';
import history from './history'; import history from './history';
import {SnackbarHOC, configShareForIndex} from 'educoder' import {SnackbarHOC} from 'educoder'
import {initAxiosInterceptors} from './AppConfig' import {initAxiosInterceptors} from './AppConfig'
@ -298,61 +298,7 @@ class App extends Component {
mydisplay:true, mydisplay:true,
}) })
}; };
initWXShare = () => {
if (window.wx) {
const wx = window.wx
const url = '/wechats/js_sdk_signature.json'
const currentUrl = window.location.href.split('#')[0]
// window.encodeURIComponent()
axios.post(url, {
url: window.__testUrl || currentUrl,
}).then((response) => {
console.log('got res')
const data = response.data;
wx.config({
debug: false,
appId: data.appid,
timestamp: data.timestamp,
nonceStr: data.noncestr,
signature: data.signature,
jsApiList: [
'onMenuShareTimeline',//
'onMenuShareAppMessage',
'onMenuShareQQ',
'onMenuShareWeibo',
'onMenuShareQZone'
]
});
wx.ready(function () {
console.log('wx is ready')
// var shareData = {
// title: 'EduCoder - 首页',
// desc: 'Educoder是一个面向计算机类的互联网IT教育和实战平台提供企业级工程实训以实现工程化专业教学的自动化和智能化。高校和企业人员可以在此开展计算机实践性教学活动将传统的知识传授和时兴的工程实战一体化。',
// link: currentUrl,
// imgUrl: window.__testImageUrl
// || (currentUrl.endsWith('/') ? currentUrl : currentUrl + '/') + 'react/build/images/share_logo_icon.jpg'
// };
// wx.onMenuShareAppMessage(shareData);//分享给好友
// wx.onMenuShareTimeline(shareData);//分享到朋友圈
// wx.onMenuShareQQ(shareData);//分享给手机QQ
// wx.onMenuShareWeibo(shareData);//分享腾讯微博
// wx.onMenuShareQZone(shareData);//分享到QQ空间
configShareForIndex('/')
});
wx.error(function (res) {
console.log('wx is error')
console.log(res)
//alert(res.errMsg);//错误提示
});
}).catch((error) => {
console.log(error)
})
}
}
disableVideoContextMenu = () => { disableVideoContextMenu = () => {
window.$( "body" ).on( "mousedown", "video", function(event) { window.$( "body" ).on( "mousedown", "video", function(event) {
if(event.which === 3) { if(event.which === 3) {
@ -374,7 +320,6 @@ class App extends Component {
}); });
initAxiosInterceptors(this.props) initAxiosInterceptors(this.props)
this.initWXShare()
// //
// axios.interceptors.response.use((response) => { // axios.interceptors.response.use((response) => {
// // console.log("response"+response); // // console.log("response"+response);

@ -1,3 +1,4 @@
import axios from 'axios'
const host = window.location.protocol + '//' + window.location.host const host = window.location.protocol + '//' + window.location.host
const wx = window.wx const wx = window.wx
function share(shareData) { function share(shareData) {
@ -11,7 +12,47 @@ function share(shareData) {
console.log(e) console.log(e)
} }
} }
const urlDoneMap = {}
function requestForSignatrue (callback) {
const currentUrl = window.location.href.split('#')[0]
if (window.wx && !urlDoneMap[currentUrl]) {
const wx = window.wx
const url = '/wechats/js_sdk_signature.json'
urlDoneMap[currentUrl] = true
// window.encodeURIComponent()
axios.post(url, {
url: window.__testUrl || currentUrl,
}).then((response) => {
console.log('got res')
const data = response.data;
wx.config({
debug: false,
appId: data.appid,
timestamp: data.timestamp,
nonceStr: data.noncestr,
signature: data.signature,
jsApiList: [
'onMenuShareTimeline',//
'onMenuShareAppMessage',
'onMenuShareQQ',
'onMenuShareWeibo',
'onMenuShareQZone'
]
});
wx.ready(function () {
callback && callback()
});
wx.error(function (res) {
console.log('wx is error')
console.log(res)
//alert(res.errMsg);//错误提示
});
}).catch((error) => {
console.log(error)
})
}
}
/** /**
实践课程 平台提供涵盖基础入门案例实践和创新应用的完整实训项目体系通过由浅入深的实训路径帮助学生快速提升实战能力 实践课程 平台提供涵盖基础入门案例实践和创新应用的完整实训项目体系通过由浅入深的实训路径帮助学生快速提升实战能力
实训项目 覆盖不同专业的IT实验和实训每周更新无需配置本机实验环境随时随地开启企业级真实实训 实训项目 覆盖不同专业的IT实验和实训每周更新无需配置本机实验环境随时随地开启企业级真实实训
@ -19,67 +60,72 @@ function share(shareData) {
单个课程和实训 获取课程/实训的简介 该课程或者实训展示的缩略图 单个课程和实训 获取课程/实训的简介 该课程或者实训展示的缩略图
*/ */
export function configShareForIndex (path) { export function configShareForIndex (path) {
if (!wx) return; requestForSignatrue(() => {
var shareData = { var shareData = {
title: 'EduCoder - 首页', title: 'EduCoder - 首页',
desc: 'Educoder是一个面向计算机类的互联网IT教育和实战平台提供企业级工程实训以实现工程化专业教学的自动化和智能化。高校和企业人员可以在此开展计算机实践性教学活动将传统的知识传授和时兴的工程实战一体化。', desc: 'Educoder是一个面向计算机类的互联网IT教育和实战平台提供企业级工程实训以实现工程化专业教学的自动化和智能化。高校和企业人员可以在此开展计算机实践性教学活动将传统的知识传授和时兴的工程实战一体化。',
link: host + (path || ''), link: host + (path || ''),
imgUrl: window.__testImageUrl imgUrl: window.__testImageUrl
|| host + '/react/build/images/share_logo_icon.jpg' || host + '/react/build/images/share_logo_icon.jpg'
}; };
share(shareData) share(shareData)
})
} }
export function configShareForPaths () { export function configShareForPaths () {
if (!wx) return; requestForSignatrue(() => {
console.log('configShareForPaths', host) console.log('configShareForPaths', host)
var shareData = { var shareData = {
title: 'EduCoder - 实践课程', title: 'EduCoder - 实践课程',
desc: '平台提供涵盖基础入门、案例实践和创新应用的完整实训项目体系,通过由浅入深的实训路径,帮助学生快速提升实战能力。', desc: '平台提供涵盖基础入门、案例实践和创新应用的完整实训项目体系,通过由浅入深的实训路径,帮助学生快速提升实战能力。',
link: `${host}/paths`, link: `${host}/paths`,
imgUrl: window.__testImageUrl imgUrl: window.__testImageUrl
|| host + '/react/build/images/share_logo_icon.jpg' || host + '/react/build/images/share_logo_icon.jpg'
}; };
share(shareData) share(shareData)
})
} }
export function configShareForShixuns () { export function configShareForShixuns () {
if (!wx) return; requestForSignatrue(() => {
console.log('configShareForShixuns', host) console.log('configShareForShixuns', host)
var shareData = { var shareData = {
title: 'EduCoder - 实训项目', title: 'EduCoder - 实训项目',
desc: '覆盖不同专业的IT实验和实训每周更新无需配置本机实验环境随时随地开启企业级真实实训。', desc: '覆盖不同专业的IT实验和实训每周更新无需配置本机实验环境随时随地开启企业级真实实训。',
link: `${host}/shixuns`, link: `${host}/shixuns`,
imgUrl: window.__testImageUrl imgUrl: window.__testImageUrl
|| host + '/react/build/images/share_logo_icon.jpg' || host + '/react/build/images/share_logo_icon.jpg'
}; };
share(shareData) share(shareData)
})
} }
export function configShareForCourses () { export function configShareForCourses () {
if (!wx) return; requestForSignatrue(() => {
console.log('configShareForCourses', host) console.log('configShareForCourses', host)
var shareData = { var shareData = {
title: 'EduCoder - 翻转课堂', title: 'EduCoder - 翻转课堂',
desc: '自动评测实训任务,支持技能统计,提供教学活动分析报告,减轻教师和助教的辅导压力,免去作业发布和批改的困扰,实时了解学生学习情况,全面提升教师施教效率和水平。', desc: '自动评测实训任务,支持技能统计,提供教学活动分析报告,减轻教师和助教的辅导压力,免去作业发布和批改的困扰,实时了解学生学习情况,全面提升教师施教效率和水平。',
link: `${host}/courses`, link: `${host}/courses`,
imgUrl: window.__testImageUrl imgUrl: window.__testImageUrl
|| host + '/react/build/images/share_logo_icon.jpg' || host + '/react/build/images/share_logo_icon.jpg'
}; };
share(shareData) share(shareData)
})
} }
// detail // detail
export function configShareForCustom (title, desc, path, imgUrl) { export function configShareForCustom (title, desc, path, imgUrl) {
if (!wx) return; requestForSignatrue(() => {
console.log('configShareForCustom', host) console.log('configShareForCustom', host)
var shareData = { var shareData = {
title: title, title: title,
desc: desc, desc: desc,
link: `${host}/${path}`, link: `${host}/${path}`,
imgUrl: imgUrl || window.__testImageUrl imgUrl: imgUrl || window.__testImageUrl
|| host + '/react/build/images/share_logo_icon.jpg' || host + '/react/build/images/share_logo_icon.jpg'
}; };
share(shareData) share(shareData)
})
} }

Loading…
Cancel
Save