修复bug
This commit is contained in:
@@ -1071,7 +1071,7 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte
|
||||
margin: 0 3rem 0 1rem;
|
||||
}
|
||||
.ant-message {
|
||||
z-index: 1049 !important;
|
||||
z-index: 9999 !important;
|
||||
top: 6rem;
|
||||
}
|
||||
.ant-modal-confirm-btns .ant-btn:hover {
|
||||
|
||||
@@ -1172,7 +1172,7 @@ tr > .ant-picker-cell-in-view.ant-picker-cell-range-hover-start:last-child::afte
|
||||
margin: 0 3rem 0 1rem;
|
||||
}
|
||||
.ant-message{
|
||||
z-index: 1049 !important;
|
||||
z-index: 9999 !important;
|
||||
top: 6rem;
|
||||
}
|
||||
.ant-modal-confirm-btns{
|
||||
|
||||
@@ -296,7 +296,7 @@
|
||||
<div class="generalModelOperate_btn_ok" :class="[credits < (allExportSR.filter(item=> item.checked ).length*5)?'active':'']" @click="setExportSR">OK</div>
|
||||
</div>
|
||||
</a-modal>
|
||||
<publish ref="publish" ></publish>
|
||||
<publish ref="publish" @clearPublish="clearPublish"></publish>
|
||||
<liquefaction ref="liquefaction" @submitLiquefaction="submitLiquefaction"></liquefaction>
|
||||
</a-modal>
|
||||
</div>
|
||||
@@ -1200,7 +1200,10 @@ export default defineComponent({
|
||||
let keyDown = []
|
||||
let oldOperation = ''
|
||||
let canvasKeyDown = (event) => {
|
||||
event.preventDefault();
|
||||
let keys = ['Enter','Delete','ControlLeft','KeyZ','ShiftLeft','KeyC','KeyV','BracketLeft','BracketRight','KeyI','KeyD','KeyO','Backquote']
|
||||
if(keys.indexOf(event.key) > -1){
|
||||
event.preventDefault();
|
||||
}
|
||||
if(keyDown.indexOf(event.code)>-1){
|
||||
}else{
|
||||
keyDown.push(event.code)
|
||||
@@ -1218,7 +1221,6 @@ export default defineComponent({
|
||||
paste()
|
||||
}else if(keyDown.indexOf('BracketLeft') > -1){
|
||||
let width = canvasPencilWidth.value[operation.value]
|
||||
console.log(width);
|
||||
canvasPencilWidth.value[operation.value] = (width - 5) < 3?3:(width - 5)
|
||||
console.log(canvasPencilWidth.value[operation.value]);
|
||||
setPencilWidth()
|
||||
@@ -2018,6 +2020,12 @@ export default defineComponent({
|
||||
userlikeGroupId:userlikeGroupId,
|
||||
}
|
||||
publishModal.init(data)
|
||||
document.removeEventListener("keydown", setCanvasKeyDown);
|
||||
document.removeEventListener("keyup", clearCanvasKeyDown);
|
||||
}
|
||||
const clearPublish = ()=>{
|
||||
document.addEventListener("keydown", setCanvasKeyDown);
|
||||
document.addEventListener("keyup", clearCanvasKeyDown);
|
||||
}
|
||||
let setSubmit = ()=>{
|
||||
let data = setCanvasContent(false)
|
||||
@@ -2139,6 +2147,7 @@ export default defineComponent({
|
||||
uploadImage,//上传图帕
|
||||
setLayerIndex,//设置选中元素的层级
|
||||
brushList,//笔触列表
|
||||
clearPublish,
|
||||
textureList,//材质列表
|
||||
canvasPencilColor,//input选择颜色
|
||||
canvasPencilWidth,//input选择宽度
|
||||
|
||||
@@ -85,6 +85,7 @@ import { useI18n } from 'vue-i18n';
|
||||
import { useStore } from "vuex";
|
||||
|
||||
export default defineComponent({
|
||||
emits: ['clearPublish'],
|
||||
setup(prop,{emit}) {
|
||||
let {t} = useI18n()
|
||||
const store = useStore();
|
||||
@@ -199,6 +200,7 @@ export default defineComponent({
|
||||
publish.value = false
|
||||
publishData.isShowMark = false
|
||||
publishData.subPublishDate = {}
|
||||
emit('clearPublish')
|
||||
}
|
||||
let cancelDsign = ()=>{
|
||||
Modal.confirm({
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
</div>
|
||||
<div class="echarts_box">
|
||||
<div class="title generalModel_state">
|
||||
<div class="radio">
|
||||
<!-- <div class="radio">
|
||||
<label>
|
||||
<input name="pric" type="radio" value="monthly" v-model="current.type" @change="setPricType('monthly')">
|
||||
Monthly
|
||||
@@ -33,7 +33,7 @@
|
||||
<input name="pric" type="radio" value="year" v-model="current.type" @change="setPricType('year')">
|
||||
Yearly
|
||||
</label>
|
||||
</div>
|
||||
</div> -->
|
||||
<div class="date generalModel_state_item">
|
||||
<a-date-picker
|
||||
class="range_picker"
|
||||
|
||||
@@ -12,8 +12,8 @@
|
||||
<div class="title">{{ item.title }}</div>
|
||||
<div class="info">{{ item.info }}</div>
|
||||
<div class="detail">{{ item.detail }}</div>
|
||||
<div class="highlight">{{ item.highlight }}</div>
|
||||
<div class="gallery_btn gallery_btn_radius" @click="createAccount">Create account</div>
|
||||
<div class="highlight" v-if="item.highlight">{{ item.highlight }}</div>
|
||||
<div class="gallery_btn gallery_btn_radius" :class="{active:item.title == '------------------'}" @click="createAccount">Create account</div>
|
||||
</div>
|
||||
<ul class="product_detail">
|
||||
<li v-for="detailItem in item.detailList">{{ detailItem }}</li>
|
||||
@@ -69,6 +69,31 @@
|
||||
'Suitable for individual creators and freelance designers to use'
|
||||
]
|
||||
},
|
||||
{
|
||||
title:"------------------",
|
||||
info:"--- / Year",
|
||||
detail:"---------------------------------------------",
|
||||
// highlight:"---------------",
|
||||
detailList:[
|
||||
'---------------------------------------',
|
||||
'---------------------------------------',
|
||||
'---------------------------------------',
|
||||
'---------------------------------------',
|
||||
'---------------------------------------',
|
||||
]
|
||||
},{
|
||||
title:"------------------",
|
||||
info:"--- / Year",
|
||||
detail:"---------------------------------------------",
|
||||
// highlight:"---------------",
|
||||
detailList:[
|
||||
'---------------------------------------',
|
||||
'---------------------------------------',
|
||||
'---------------------------------------',
|
||||
'---------------------------------------',
|
||||
'---------------------------------------',
|
||||
]
|
||||
},
|
||||
// {
|
||||
// title:"Education Edition",
|
||||
// info:"XXX / Year",
|
||||
@@ -216,6 +241,9 @@
|
||||
border: 2px solid #000;
|
||||
padding: 3rem;
|
||||
position: relative;
|
||||
.active{
|
||||
pointer-events: none;
|
||||
}
|
||||
}
|
||||
.product_detail{
|
||||
margin-top: 4rem;
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
</a-modal>
|
||||
</template>
|
||||
<script>
|
||||
import { defineComponent, ref, reactive, watch, onMounted, nextTick, toRefs } from "vue";
|
||||
import { defineComponent, ref, reactive, watch, onMounted, nextTick, toRefs, onBeforeUnmount } from "vue";
|
||||
import { useI18n } from "vue-i18n";
|
||||
import { getMousePosition } from "@/tool/mdEvent";
|
||||
export default defineComponent({
|
||||
@@ -84,6 +84,8 @@ export default defineComponent({
|
||||
transform:`translateY(-100%) rotate(${90}deg)`,
|
||||
}
|
||||
})
|
||||
let records = []//撤回
|
||||
let normalCanvasState = []//反撤回
|
||||
let canvas
|
||||
let canvasImgData = {
|
||||
width:0,
|
||||
@@ -91,8 +93,12 @@ export default defineComponent({
|
||||
}
|
||||
let downX
|
||||
let downY
|
||||
let context
|
||||
let init = async (data)=>{
|
||||
records = []
|
||||
liqufeaction.value = true
|
||||
document.addEventListener("keydown", kyeDown);
|
||||
document.addEventListener("keyup", KeyUp);
|
||||
await new Promise((resolve, reject) => {
|
||||
nextTick(()=>{
|
||||
resolve()
|
||||
@@ -115,7 +121,7 @@ export default defineComponent({
|
||||
canvas.width = width
|
||||
canvas.height = height
|
||||
let optfor = false
|
||||
const context = canvas.getContext('2d');
|
||||
context = canvas.getContext('2d');
|
||||
context.drawImage(img, 1, 1, canvas.width, canvas.height);
|
||||
let imgData = context.getImageData(0, 0, canvas.width, canvas.height)
|
||||
|
||||
@@ -160,7 +166,9 @@ export default defineComponent({
|
||||
}
|
||||
distance = 0
|
||||
arrows.value.show = false
|
||||
context.putImageData(imgData, 0, 0);
|
||||
const copiedImgData = new ImageData(new Uint8ClampedArray(imgData.data), imgData.width, imgData.height);
|
||||
records.push(copiedImgData)
|
||||
context.putImageData(copiedImgData, 0, 0);
|
||||
optfor = false
|
||||
canvasBox.removeEventListener('mousemove', mouseMove);
|
||||
canvasBox.removeEventListener('touchmove', touchmove);
|
||||
@@ -203,7 +211,10 @@ export default defineComponent({
|
||||
}else{
|
||||
img.src = data
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
let distanceSqr = (x1, y1, x2, y2) => sqr(x1 - x2) + sqr(y1 - y2);
|
||||
let sqr = (x) => x * x;;
|
||||
let eachCircleDot = (imageData, ox, oy, r, callback)=>{
|
||||
@@ -244,6 +255,44 @@ export default defineComponent({
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
let keyDowns = []
|
||||
let kyeDown = (event)=>{
|
||||
if(keyDowns.indexOf(event.code)>-1){
|
||||
}else{
|
||||
keyDowns.push(event.code)
|
||||
if(keyDowns.indexOf('ControlLeft') > -1 && keyDowns.indexOf('KeyZ') > -1 && keyDowns.indexOf('ShiftLeft') > -1){
|
||||
historyState('')
|
||||
}else if(keyDowns.indexOf('ControlLeft') > -1 && keyDowns.indexOf('KeyZ') > -1){
|
||||
historyState('reverse')
|
||||
}
|
||||
}
|
||||
}
|
||||
let KeyUp = (event) =>{
|
||||
keyDowns = keyDowns.filter(function(item) {
|
||||
return event.code !== item;
|
||||
})
|
||||
}
|
||||
const historyState = (str)=>{
|
||||
console.log(str);
|
||||
let obj
|
||||
if(str == 'reverse' && records.length > 0){//反撤回
|
||||
obj = records.pop()
|
||||
normalCanvasState.push(obj);
|
||||
}else if(str == '' && normalCanvasState.length > 1){
|
||||
obj = normalCanvasState.pop()
|
||||
records.push(obj);
|
||||
}else{
|
||||
return
|
||||
}
|
||||
console.log(obj,context);
|
||||
context.putImageData(obj, 0, 0);
|
||||
|
||||
}
|
||||
onBeforeUnmount(()=>{
|
||||
document.removeEventListener("keydown", kyeDown);
|
||||
document.removeEventListener("keyup", KeyUp);
|
||||
})
|
||||
let copyImageDataBuff = (imgData)=>{
|
||||
var data = imgData.data,
|
||||
imgDataBuff = [];
|
||||
|
||||
@@ -222,12 +222,12 @@ const userHabit : Module<UserHabit,RootState> = {
|
||||
}
|
||||
}
|
||||
state.userDetail.email = data.email?data.email:'------'
|
||||
let current = Math.floor(Date.now() / 1000);
|
||||
let current = Math.floor(Date.now() );
|
||||
let timeData
|
||||
if(data.expireTime){
|
||||
if(data.validEndTime){
|
||||
timeData = {
|
||||
isExpiration:current<data.expireTime,
|
||||
text:new Date(parseInt(String(data.expireTime*1000))).toLocaleDateString()
|
||||
isExpiration:current<data.validEndTime,
|
||||
text:new Date(parseInt(String(data.validEndTime))).toLocaleDateString()
|
||||
}
|
||||
}else{
|
||||
timeData = {
|
||||
|
||||
@@ -86,6 +86,7 @@ axios.interceptors.response.use((res) =>{
|
||||
} else if(res.data.errCode === 2){
|
||||
return Promise.reject(res.data);
|
||||
}else if(res.data.errCode === -1){
|
||||
console.log(23);
|
||||
message.error(res.data.errMsg)
|
||||
return Promise.reject(res.data);
|
||||
}
|
||||
|
||||
@@ -349,7 +349,11 @@ export default defineComponent({
|
||||
'userDetail.email':{
|
||||
handler(newVal, oldVal){
|
||||
nextTick(()=>{
|
||||
if(newVal == '-------------')this.setBindEmail()//如果没有绑定邮箱就弹窗
|
||||
if(newVal == '-------------'){
|
||||
setTimeout(()=>{
|
||||
this.setBindEmail()//如果没有绑定邮箱就弹窗
|
||||
},1000)
|
||||
}
|
||||
})
|
||||
},
|
||||
immediate: true
|
||||
|
||||
@@ -127,6 +127,11 @@
|
||||
)">
|
||||
</div>
|
||||
</div>
|
||||
<div class="content_img_block" v-show="showDesignMark">
|
||||
<div class="content_img_flex" >
|
||||
<img class="content_img" src="@/assets/images/homePage/loading.gif" />
|
||||
</div>
|
||||
</div>
|
||||
<!-- </draggable> -->
|
||||
<div class="content_img_block" :style="collStyle" v-for="(
|
||||
design, index
|
||||
@@ -151,12 +156,7 @@
|
||||
">
|
||||
</div>
|
||||
</div>
|
||||
<div class="content_img_block" v-show="showDesignMark">
|
||||
<div class="content_img_flex" >
|
||||
<!-- <img class="content_img" v-lazy="''" /> -->
|
||||
<img class="content_img" src="@/assets/images/homePage/loading.gif" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -708,7 +708,6 @@ export default defineComponent({
|
||||
objectSignList:data.requestIdList.join(),
|
||||
requestId:rv
|
||||
}
|
||||
this.store.commit("setDesignCollectionList",[]);
|
||||
this.getDesignResult(value,'newDesign')
|
||||
this.startDesignType = "design";
|
||||
}
|
||||
@@ -736,7 +735,7 @@ export default defineComponent({
|
||||
const item = arr[index];
|
||||
await new Promise((resolve, reject) => {
|
||||
setTimeout(() => {
|
||||
this.designCollectionList.push(item)
|
||||
this.designCollectionList.unshift(item)
|
||||
resolve('')
|
||||
}, 200);
|
||||
})
|
||||
@@ -802,7 +801,6 @@ export default defineComponent({
|
||||
requestId:rv
|
||||
}
|
||||
this.getDesignResult(value,'resDesign')
|
||||
this.store.commit("setDesignCollectionList",[]);
|
||||
this.startDesignType = "resDesign";
|
||||
this.isShowMark = false
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user