import React, { Component } from 'react'; import { getUrl2, isDev } from 'educoder' const $ = window.$ let _url_origin = getUrl2() // let _url_origin = `http://47.96.87.25:48080`; function save_avatar(){ // if($(img_lg).html().trim() == ""){ // $("#avatar-name").html("请先选择图片上传").css("color", 'red'); // } else { // $("#avatar-name").html("").css("color", '#333'); const previewId = this.props.previewId var img_lg = document.getElementById(previewId || 'img-preview'); // 截图小的显示框内的内容 window.html2canvas(img_lg).then(function(canvas) { // for test // document.getElementById('canvasWrap').appendChild(canvas); var dataUrl = canvas.toDataURL("image/jpeg"); console.log(dataUrl) // TODO upload base64 image data to server }); return // 老版接口: // html2canvas(img_lg, { // allowTaint: true, // taintTest: false, // onrendered: function(canvas) { // canvas.id = "mycanvas"; // //生成base64图片数据 // var dataUrl = canvas.toDataURL("image/jpeg"); // console.log(dataUrl) // var newImg = document.getElementById("showImg"); // newImg.src = dataUrl; // return; // imagesAjax(dataUrl); // $(".avatar-save").attr("disabled","true"); // } // }); // } } /** props 说明: imageId 源图片标签的id previewId crop后预览dom的id imageSrc 源图片src width 数字格式 height 数字格式 */ class Cropper extends Component { state = { }; handleChange = (info) => { } componentDidMount() { this.options = { aspectRatio: 1, crop(event) { // console.log(event.detail.x); // console.log(event.detail.y); // console.log(event.detail.width); // console.log(event.detail.height); // console.log(event.detail.rotate); // console.log(event.detail.scaleX); // console.log(event.detail.scaleY); }, preview: this.props.previewId ? `#${this.props.previewId}` : '.img-preview', } if (!window.Cropper) { $.ajaxSetup({ cache: true }); const _isDev = isDev() let _path = _isDev ? 'public' : 'build' $('head').append($('') .attr('href', `${_url_origin}/react/${_path}/js/cropper/cropper.min.css`)); $.getScript( `${_url_origin}/react/${_path}/js/cropper/cropper.js`, (data, textStatus, jqxhr) => { }); $.getScript( `${_url_origin}/react/${_path}/js/cropper/html2canvas.min.js`, (data, textStatus, jqxhr) => { }); } setTimeout(() => { const image = document.getElementById(this.props.imageId || '__image'); this.cropper = new window.Cropper(image, this.options); }, 1000) } renew = (image) => { this.cropper && this.cropper.destroy(); this.cropper = new window.Cropper(image, this.options); } render() { const { width, height, previewId, imageSrc } = this.props; return (
{/* This rule is very important, please do not ignore this! */}
{/* http://localhost:3007/images/footNavLogo.png 图片转了后不对 || "/images/testPicture.jpg" || "/images/shixun0.jpg" */}
{/* background: 'aquamarine', 'border-radius': '128px' */} {!previewId &&
} {/* */} {/*
*/} {/* */}
); } } export default Cropper; // function aaa () { // function showedit_headphoto() { // var html = ` //