V1.2.0已发布的测试版

This commit is contained in:
yaoqin 2025-08-08 17:15:09 +08:00
parent 9153dff407
commit e50db2f719
45 changed files with 310 additions and 157 deletions

View File

@ -3,7 +3,7 @@
"version": "0.1.0",
"private": true,
"scripts": {
"serve": "set NODE_OPTIONS=--max-old-space-size=8192 && vue-cli-service serve",
"serve": "vue-cli-service serve",
"build": "vue-cli-service build",
"test": "vue-cli-service build --mode staging --dest test",
"lint": "vue-cli-service lint"

View File

@ -27,6 +27,7 @@ export const backendSystem_zh = {
editContent:"修改广播内容",
dialogTitle:"新增广播内容",
pleaseInputContent:"请输入广播内容",
pleaseInputContent2:"请输入内容",
newlineInvalid:"广播内容输入换行符无效",
onlineUserNum:"在线数量",
offlineUserNum:"离线数量",
@ -148,6 +149,7 @@ export const backendSystem_zh = {
contentReset:"内容已重置",
selectCurrency:"选择币种",
pleaseSelectCurrency2:"添加挖矿教程,请选择币种",
pleaseInputTitle:"请输入标题",
}
}
@ -303,6 +305,9 @@ export const backendSystem_en = {
contentReset:"Content has been reset",
selectCurrency:"Select Currency",
pleaseSelectCurrency2:"Please select a currency when adding mining tutorials",
pleaseInputContent2:"Please input content",
pleaseInputTitle:"Please input title",
}
}

View File

@ -50,7 +50,7 @@
<section class="menu">
<ul>
{{activeCoin }}
<li
:class="{ active: activeCoin == item.coin }"
@ -61,7 +61,7 @@
<img :src="item.titleUrl" alt="coin" />
<span>
{{ item.title }}
{{ item.coin }}
</span>
</li>
<!-- <li
@ -835,7 +835,7 @@ export default {
:deep(p) {
text-align: justify !important;
text-justify: inter-ideograph !important;
text-indent: 2em !important;
text-indent: 0 !important;
line-height: 2 !important;
margin: 0.8em 0 !important;
word-break: break-all;

View File

@ -60,6 +60,7 @@ export default{
* 获取具体文档内容
*/
async fetchDocumentsInfo(params){
this.setLoading('loading', true);
try {
const res = await findDataInfo(params)
@ -74,6 +75,7 @@ export default{
console.error('获取文档内容失败:', error)
this.info = ""
}
this.setLoading('loading', false);
},

View File

@ -1,5 +1,5 @@
<template>
<div class="ServiceTerms">
<div class="ServiceTerms" v-loading="loading">

View File

@ -15,7 +15,7 @@ export default {
childType:3,//1服务条款、2费率、3API文档 childType
},
navContent: {},
documentLoading: false,
documentLoading: true,
documentContent: '',
documentError: '',
navList:[],
@ -30,6 +30,7 @@ export default {
async getDocumentsList(params) {
try {
const res = await documentsList(params)
this.setLoading('documentLoading', true);
if (res && res.code === 200) {
this.navList = res.rows

View File

@ -35,16 +35,9 @@ export default {
},
mounted() {
this.fetchProblemsList(this.listParams)
if (this.$route.query.id) {
this.DetailsParams.id = this.$route.query.id
}else if(this.problems.length > 0){
this.DetailsParams.id = this.problems[0].id;
}
console.log(this.DetailsParams.id,"this.DetailsPara发发发麻烦你ms.id");
this.fetchProblemDetails(this.DetailsParams)
},
methods: {
@ -53,11 +46,14 @@ export default {
const res = await documentsList(params)
if(res && res.code === 200){
this.problems = res.rows;
if (!this.$route.query.id) {
this.DetailsParams.id = this.problems[0].id;
}
// this.DetailsParams.id = this.problems[0].id;
// this.fetchProblemDetails(this.DetailsParams)
if (this.$route.query.id) {
this.DetailsParams.id = this.$route.query.id
}else if(this.problems.length > 0){
this.DetailsParams.id = this.problems[0].id;
}
this.fetchProblemDetails(this.DetailsParams)
}
this.setLoading('problemLoading', false);
},

View File

@ -35,6 +35,9 @@
<el-button type="success" icon="el-icon-document" @click="handleSave">
{{ $t("backendSystem.saveDocument") || "保存文档" }}
</el-button>
<el-button type="danger" icon="el-icon-delete" @click="handleReset">
{{ $t("backendSystem.reset") || "重置" }}
</el-button>
<el-button
type="warning"
icon="el-icon-upload2"
@ -42,9 +45,7 @@
>
{{ $t("backendSystem.publishDocument") || "发布文档" }}
</el-button>
<el-button type="danger" icon="el-icon-delete" @click="handleReset">
{{ $t("backendSystem.reset") || "重置" }}
</el-button>
</div>
</div>
@ -70,9 +71,11 @@
"
@input="handleAutoSave"
size="medium"
maxlength="30"
show-word-limit
/>
</div>
<div class="config-item">
<label class="required">{{
$t("backendSystem.documentType") || "文档类型"
@ -81,7 +84,7 @@
:options="TypeList"
v-model="typeArray"
@change="handleAutoSaveType(typeArray)"
clearable
:placeholder="
$t('backendSystem.pleaseSelectDocumentType') || '请选择文档类型'
"
@ -108,6 +111,7 @@
"
@input="handleAutoSave"
size="medium"
/>
</div>
@ -122,6 +126,8 @@
"
@input="handleAutoSave"
size="medium"
maxlength="50"
show-word-limit
/>
</div>
</div>
@ -169,7 +175,7 @@
<span>{{ $t("backendSystem.richTextEditor") || "富文本编辑器" }}</span>
</div>
<div class="editor-container">
<div ref="editor" style="height: 600px"></div>
<div ref="editor" ></div>
</div>
</div>
@ -393,7 +399,7 @@ export default Vue.extend({
onCreated(editor) {
this.editor = editor;
console.log("编辑器已初始化", this.editor);
//
if (this.addParams.content) {
this.$nextTick(() => {
@ -403,7 +409,26 @@ export default Vue.extend({
},
handelAddDocument() {
if (!this.addParams.type || this.addParams.type == "0") {
//
if (this.editor) {
this.addParams.content = this.editor.txt.html();
}
console.log(this.addParams.content, "this.addParams.content");
if (!this.addParams.content) {
this.$message({
message:
this.$t("backendSystem.pleaseInputContent2") ||
"请输入内容",
type: "warning",
duration: 4000,
showClose: true,
});
return;
}
console.log(this.addParams.type,this.typeArray, "this.addParams.type");
if (!this.addParams.type ) {
this.$message({
message:
this.$t("backendSystem.pleaseSelectDocumentType") ||
@ -415,6 +440,27 @@ export default Vue.extend({
return;
}
if (this.addParams.type == `0` && (!this.addParams.childType || this.addParams.childType == `0`) ) {
this.$message({
message: this.$t('backendSystem.pleaseInputType') || '请填写文档类型',
type: "warning",
duration: 4000,
showClose: true,
});
return;
}
if (!this.addParams.title) {
this.$message({
message:
this.$t("backendSystem.pleaseInputTitle") ||
"请输入标题",
type: "warning",
duration: 4000,
showClose: true,
});
return;
}
if (this.addParams.type == "1" && !this.screenCurrency) {
this.$message({
@ -437,6 +483,8 @@ export default Vue.extend({
}
);
}
this.addParams.coin = this.screenCurrency
console.log(this.addParams.content, "this.addParams.content");
@ -483,6 +531,9 @@ export default Vue.extend({
this.handleAutoSave();
},
handleAutoSaveType(type) {
if (type.length == 0) return;
console.log(`走这里了嘛`,type);
try {
let item = this.TypeList.find((item) => item.value === type[0]);
if (item.articleUrl) {
@ -520,13 +571,7 @@ export default Vue.extend({
this.saveToLocalStorage();
}, 1500); // 1.5
if (this.addParams.type == "2") {
//
this.addParams.articleUrl = `commonProblem`;
} else if (this.addParams.type == "3") {
//
this.addParams.articleUrl = `announcementDetails`;
}
},
saveToLocalStorage() {
@ -568,7 +613,8 @@ export default Vue.extend({
const savedData = localStorage.getItem(LOCAL_STORAGE_KEY);
if (savedData) {
const data = JSON.parse(savedData);
console.log(data, "data");
// 7
const isExpired =
Date.now() - (data.lastModified || 0) > 7 * 24 * 60 * 60 * 1000;
@ -581,16 +627,21 @@ export default Vue.extend({
// 使 $nextTick DOM
this.$nextTick(() => {
this.addParams.title = data.title || "";
this.addParams.content = data.content || "";
this.addParams.type = data.type || "1";
this.addParams.imageUrl = data.imageUrl || "";
this.lastSaveTime = data.timestamp || "";
//
if (this.editor) {
this.editor.txt.html(data.content || "");
if (data.type !== `0`) {
this.addParams.title = data.title || "";
this.addParams.content = data.content || "";
this.addParams.type = data.type || "1";
this.addParams.imageUrl = data.imageUrl || "";
this.lastSaveTime = data.timestamp || "";
console.log(data.type,this.typeArray, "data.type");
//
if (this.editor) {
this.editor.txt.html(data.content || "");
}
}
});
}
} catch (error) {
@ -905,7 +956,7 @@ export default Vue.extend({
/* 设置编辑器高度 */
::v-deep .editor-container .w-e-text-container {
height: 600px !important;
// height: 600px !important;
min-height: 600px !important;
z-index: 1 !important;
position: relative;

View File

@ -29,7 +29,16 @@ export default{
// 确保type字段为字符串类型以便与TypeList中的value匹配
this.addParams.type = String(this.addParams.type)
this.addParams.childType = String(this.addParams.childType)
this.typeArray = [this.addParams.type]
if (this.modifyData.childType && this.modifyData.childType !== `0`) {
this.typeArray = [this.addParams.type,this.modifyData.childType]
}else{
this.typeArray = [this.modifyData.type]
}
// 标记已从后台获取数据,避免被本地存储覆盖
this.hasBackendData = true
this.screenCurrency = this.addParams.coin

View File

@ -1,42 +1,44 @@
<template>
<div class="editor-page" v-loading="addLoading" :class="{ 'no-scroll': addLoading }">
<h2 style="margin-bottom: 20px;">{{ $t('backendSystem.modifyDocument') || '修改文档' }}</h2>
<!-- 页面头部 -->
<div class="page-header">
<div class="header-left">
<div class="title-section">
<i class="el-icon-edit-outline title-icon"></i>
<h1 class="page-title">{{ $t('backendSystem.wangeditor') || 'wangeditor 富文本文档编辑器' }}</h1>
<section class="header-section">
<h2 style="margin-bottom: 20px;">{{ $t('backendSystem.modifyDocument') || '修改文档' }}</h2>
<!-- 页面头部 -->
<div class="page-header">
<div class="header-left">
<div class="title-section">
<i class="el-icon-edit-outline title-icon"></i>
<h1 class="page-title">{{ $t('backendSystem.wangeditor') || 'wangeditor 富文本文档编辑器' }}</h1>
</div>
</div>
<div class="header-actions">
<el-button
type="primary"
icon="el-icon-link"
@click="handleInsertAnchor"
>
{{ $t('backendSystem.insertAnchor') || '插入锚点' }}
</el-button>
<el-button type="info" icon="el-icon-view" @click="handlePreview">
{{ $t('backendSystem.previewDocument') || '预览文档' }}
</el-button>
<el-button type="success" icon="el-icon-document" @click="handleSave">
{{ $t('backendSystem.saveDocument') || '保存文档' }}
</el-button>
<el-button
type="warning"
icon="el-icon-upload2"
@click="handelAddDocument"
>
{{ $t('backendSystem.modifyDocument') || '修改文档' }}
</el-button>
</div>
</div>
</div>
<div class="header-actions">
<el-button
type="primary"
icon="el-icon-link"
@click="handleInsertAnchor"
>
{{ $t('backendSystem.insertAnchor') || '插入锚点' }}
</el-button>
<el-button type="info" icon="el-icon-view" @click="handlePreview">
{{ $t('backendSystem.previewDocument') || '预览文档' }}
</el-button>
<el-button type="success" icon="el-icon-document" @click="handleSave">
{{ $t('backendSystem.saveDocument') || '保存文档' }}
</el-button>
<el-button
type="warning"
icon="el-icon-upload2"
@click="handelAddDocument"
>
{{ $t('backendSystem.modifyDocument') || '修改文档' }}
</el-button>
</div>
</div>
</section>
<!-- 文档配置区域 -->
<section class="content-section">
<div class="config-section">
<div class="section-header">
<i class="el-icon-setting"></i>
@ -52,10 +54,13 @@
:placeholder="$t('backendSystem.pleaseInputDocumentTitle') || '请输入文档标题'"
@input="handleAutoSave"
size="medium"
maxlength="30"
show-word-limit
/>
</div>
<div class="config-item">
<label class="required">{{ $t('backendSystem.documentType') || '文档类型' }}</label>
<el-cascader
:options="TypeList"
@ -92,6 +97,8 @@
:placeholder="$t('backendSystem.pleaseInputAccessAddress') || '请输入访问地址'"
@input="handleAutoSave"
size="medium"
maxlength="50"
show-word-limit
/>
</div>
</div>
@ -138,11 +145,11 @@
<span>{{ $t('backendSystem.richTextEditor') || '富文本编辑器' }}</span>
</div>
<div class="editor-container">
<div ref="editor" style="height: 600px"></div>
<div ref="editor" ></div>
</div>
</div>
</section>
@ -364,8 +371,24 @@ export default Vue.extend({
handelAddDocument() {
//
if (this.editor) {
this.addParams.content = this.editor.txt.html();
}
console.log(this.addParams.content, "this.addParams.content");
if (!this.addParams.content.trim()) {
this.$message({
message:
this.$t("backendSystem.pleaseInputContent2") ||
"请输入内容",
type: "warning",
duration: 4000,
showClose: true,
});
return;
}
if (!this.addParams.type || this.addParams.type == "0") {
if (!this.addParams.type) {
this.$message({
message: this.$t('backendSystem.pleaseInputType') || '请填写文档类型',
type: "warning",
@ -375,7 +398,33 @@ export default Vue.extend({
return;
}
console.log(this.screenCurrency, "this.screenCurrency",this.addParams.type);
console.log(this.addParams.type,this.addParams.childType, "this.addP就发货很符合arams.type");
if (this.addParams.type == `0` && (!this.addParams.childType || this.addParams.childType == `0`) ) {
this.$message({
message: this.$t('backendSystem.pleaseInputType') || '请填写文档类型',
type: "warning",
duration: 4000,
showClose: true,
});
return;
}
if (!this.addParams.title) {
this.$message({
message:
this.$t("backendSystem.pleaseInputTitle") ||
"请输入标题",
type: "warning",
duration: 4000,
showClose: true,
});
return;
}
if (this.addParams.type == "1" && !this.screenCurrency) {
this.$message({
@ -446,13 +495,22 @@ export default Vue.extend({
this.handleAutoSave();
},
handleAutoSaveType(type) {
try {
if (type.length == 0) return;
console.log(`走这里了嘛`,type);
let item = this.TypeList.find((item) => item.value === type[0]);
console.log(item, type,"item");
if (item.articleUrl) {
this.addParams.articleUrl = item.articleUrl;
} else {
} else if (item.children && item.children.length > 0) {
let childItem = item.children.find((child) => child.value === type[1]);
this.addParams.articleUrl = childItem.articleUrl;
}else{
this.addParams.articleUrl = "";
}
this.addParams.type = type[0];
this.addParams.childType = type[1];
} catch (error) {
@ -469,6 +527,11 @@ export default Vue.extend({
this.autoSaveTimer = setTimeout(() => {
this.saveToLocalStorage();
}, 1500); // 1.5
},
handleAutoSave() {
@ -483,13 +546,13 @@ export default Vue.extend({
this.saveToLocalStorage();
}, 1500); // 1.5
if (this.addParams.type == "2") {
//
this.addParams.articleUrl = `commonProblem`;
} else if (this.addParams.type == "3") {
//
this.addParams.articleUrl = `announcementDetails`;
}
// if (this.addParams.type == "2") {
// //
// this.addParams.articleUrl = `commonProblem`;
// } else if (this.addParams.type == "3") {
// //
// this.addParams.articleUrl = `announcementDetails`;
// }
},
saveToLocalStorage() {
@ -542,7 +605,10 @@ export default Vue.extend({
// 使 $nextTick DOM
this.$nextTick(() => {
this.addParams.title = data.title || "";
if (data.type !== `0`) {
this.addParams.title = data.title || "";
this.addParams.content = data.content || "";
this.addParams.type = data.type || "1";
this.addParams.imageUrl = data.imageUrl || "";
@ -552,6 +618,8 @@ export default Vue.extend({
if (this.editor) {
this.editor.txt.html(data.content || "");
}
}
});
}
} catch (error) {
@ -676,13 +744,16 @@ export default Vue.extend({
.editor-page {
width: 100%;
margin: 0 auto;
padding: 20px;
padding: 10px;
background: #f8f9fa;
min-height: 60vh;
overflow-y: auto;
// overflow-y: auto;
}
/* 页面头部样式 */
.page-header {
background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
@ -744,7 +815,12 @@ export default Vue.extend({
transform: translateY(-2px);
box-shadow: 0 6px 20px rgba(0, 0, 0, 0.2);
}
.content-section{
width: 100%;
height: 80%;
overflow-y: auto;
padding: 10px;
}
/* 配置区域样式 */
.config-section {
background: white;
@ -825,7 +901,7 @@ export default Vue.extend({
/* 设置编辑器高度 */
::v-deep .editor-container .w-e-text-container {
height: 600px !important;
// height: 600px !important;
min-height: 600px !important;
z-index: 1 !important;
position: relative;

View File

@ -149,22 +149,22 @@ export default Vue.extend({
previewVisible: false, //
currentTime: '', //
TypeList:[
{
value:"1",
label:"服务条款"
},
{
value:"2",
label:"api文档"
},
{
value:"3",
label:"挖矿教程"
},
{
value:"0",
label:"其他"
}
// {
// value:"1",
// label:""
// },
// {
// value:"2",
// label:"api"
// },
// {
// value:"3",
// label:""
// },
// {
// value:"0",
// label:""
// }
],
}

View File

@ -26,41 +26,41 @@ export default{
],
/** 活动数据 */
activities: [
{
id: 1,
type: '最新公告',
title: 'LKY将停减税',
author: '文章ID1星期 主发布',
comments: '0'
},
{
id: 2,
type: '最新公告',
title: 'PFP将停减税',
author: '文章ID1星期 11发布',
comments: '0'
},
{
id: 3,
type: '最新公告',
title: 'ETC+ZIL停研发综合日获得',
author: '文章ID1星期 15发布',
comments: '0'
},
{
id: 4,
type: '最新公告',
title: '预计2023年06月19日SCC收益分配说明',
author: '文章ID1星期 18发布',
comments: '0'
},
{
id: 5,
type: '其他',
title: '关于临时(信为网站、备案管理、矿池编码)',
author: '文章ID1星期 19发布',
comments: '0'
}
// {
// id: 1,
// type: '最新公告',
// title: 'LKY将停减税',
// author: '文章ID1星期 主发布',
// comments: '0'
// },
// {
// id: 2,
// type: '最新公告',
// title: 'PFP将停减税',
// author: '文章ID1星期 11发布',
// comments: '0'
// },
// {
// id: 3,
// type: '最新公告',
// title: 'ETC+ZIL停研发综合日获得',
// author: '文章ID1星期 15发布',
// comments: '0'
// },
// {
// id: 4,
// type: '最新公告',
// title: '预计2023年06月19日SCC收益分配说明',
// author: '文章ID1星期 18发布',
// comments: '0'
// },
// {
// id: 5,
// type: '其他',
// title: '关于临时(信为网站、备案管理、矿池编码)',
// author: '文章ID1星期 19发布',
// comments: '0'
// }
],
activeParams:{
type:"3",//公告中心

View File

@ -146,7 +146,7 @@
<span>{{ handelTime(scope.row.createDate ) }}</span>
</template>
</el-table-column> -->
<el-table-column prop="shouldOutDate" :label="$t('backendSystem.shouldOutDate')" width="180" show-overflow-tooltip >
<el-table-column prop="shouldOutDate" :label="$t('backendSystem.shouldOutDate')" width="180" :resizable="false" show-overflow-tooltip >
<template slot-scope="scope">
<span>{{ handelTime(scope.row.shouldOutDate ) }}</span>
</template>
@ -154,13 +154,13 @@
<!-- <el-table-column prop="coin" :label="$t('backendSystem.coin2')" width="100" show-overflow-tooltip>
</el-table-column> -->
<el-table-column prop="allocationAmount" :label="$t('backendSystem.allocationAmount')" width="200" show-overflow-tooltip/>
<el-table-column prop="transferAmount" :label="$t('backendSystem.transferAmount')" width="200" show-overflow-tooltip/>
<el-table-column prop="allocationAmount" :label="$t('backendSystem.allocationAmount')" :resizable="false" width="200" show-overflow-tooltip/>
<el-table-column prop="transferAmount" :label="$t('backendSystem.transferAmount')" :resizable="false" width="200" show-overflow-tooltip/>
<!-- <el-table-column prop="user" :label="$t('backendSystem.minerUser2')" width="180" show-overflow-tooltip/> -->
<el-table-column prop="address" :label="$t('backendSystem.address')" show-overflow-tooltip />
<el-table-column prop="address" :label="$t('backendSystem.address')" :resizable="false" show-overflow-tooltip />
<el-table-column prop="maxHeight" :label="$t('backendSystem.maxHeight')" width="180" show-overflow-tooltip />
<el-table-column prop="maxHeight" :label="$t('backendSystem.maxHeight')" :resizable="false" width="180" show-overflow-tooltip />

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1 +1 @@
<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><meta name=google-site-verification content=pKAZogQ0NQ6L4j9-V58WJMjm7zYCFwkJXSJzWu9UDM8><meta name=robots content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1"><meta name=googlebot content="index, follow"><meta name=googlebot-news content="index, follow"><meta name=bingbot content="index, follow"><link rel=alternate hreflang=zh href=https://m2pool.com/zh><link rel=alternate hreflang=en href=https://m2pool.com/en><link rel=alternate hreflang=x-default href=https://m2pool.com/en><meta property=og:title content="M2pool - Stable leading high-yield mining pool"><meta property=og:description content="M2Pool provides professional mining services, supporting multiple cryptocurrency mining"><meta property=og:url content=https://m2pool.com/en><meta property=og:site_name content=M2Pool><meta property=og:type content=website><meta property=og:image content=https://m2pool.com/logo.png><link rel=icon href=/favicon.ico><link rel=stylesheet href=//at.alicdn.com/t/c/font_4582735_7i8wfzc0art.css><title>M2pool - Stable leading high-yield mining pool</title><meta name=keywords content="M2Pool, cryptocurrency mining pool,Entropyx(enx),entropyx, bitcoin mining, DGB mining, mining pool service, 加密货币矿池, 比特币挖矿, DGB挖矿"><meta name=description content="M2Pool provides professional mining services, supporting multiple cryptocurrency mining, including nexa, grs, mona, dgb, rxd, enx"><meta name=format-detection content="telephone=no"><meta name=apple-mobile-web-app-capable content=yes><script defer src=/js/chunk-vendors-945ce2fe.648a91a9.js></script><script defer src=/js/chunk-vendors-aacc2dbb.d317c558.js></script><script defer src=/js/chunk-vendors-bc050c32.3f2f14d2.js></script><script defer src=/js/chunk-vendors-3003db77.d0b93d36.js></script><script defer src=/js/chunk-vendors-9d134daf.bb668c99.js></script><script defer src=/js/chunk-vendors-439af1fa.48a48f35.js></script><script defer src=/js/chunk-vendors-5c533fba.b9c00e08.js></script><script defer src=/js/chunk-vendors-96cecd74.a7d9b845.js></script><script defer src=/js/chunk-vendors-c2f7d60e.3710fdc2.js></script><script defer src=/js/chunk-vendors-89d5c698.2190b4ca.js></script><script defer src=/js/chunk-vendors-377fed06.159de137.js></script><script defer src=/js/chunk-vendors-5a805870.4cfc0ae8.js></script><script defer src=/js/chunk-vendors-cf2e0a28.c6e99da0.js></script><script defer src=/js/chunk-vendors-c9ff040c.57bd8c18.js></script><script defer src=/js/app-42f9d7e6.a2ad6942.js></script><script defer src=/js/app-d87c119a.4cb0202f.js></script><script defer src=/js/app-5c551db8.84d543aa.js></script><script defer src=/js/app-b4c4f6ec.eb8c1455.js></script><script defer src=/js/app-45954fd3.d2156f4b.js></script><script defer src=/js/app-a6ba6ead.ce3a9923.js></script><script defer src=/js/app-af2560cd.7ed13436.js></script><script defer src=/js/app-0a0a89cb.617c0d7d.js></script><script defer src=/js/app-f035d474.a2a8f5af.js></script><script defer src=/js/app-7023e5b0.fc505df9.js></script><script defer src=/js/app-113c6c50.f41deb32.js></script><link href=/css/chunk-vendors-5c533fba.6f97509c.css rel=stylesheet><link href=/css/app-42f9d7e6.3510b1e0.css rel=stylesheet><link href=/css/app-d87c119a.c835515c.css rel=stylesheet><link href=/css/app-b4c4f6ec.855e5d4c.css rel=stylesheet><link href=/css/app-0a0a89cb.3a738b58.css rel=stylesheet><link href=/css/app-f035d474.0348646a.css rel=stylesheet><link href=/css/app-7023e5b0.b2dd9d63.css rel=stylesheet><link href=/css/app-113c6c50.e7088500.css rel=stylesheet></head><body><div id=app></div></body></html>
<!DOCTYPE html><html lang=en><head><meta charset=utf-8><meta http-equiv=X-UA-Compatible content="IE=edge"><meta name=viewport content="width=device-width,initial-scale=1"><meta name=google-site-verification content=pKAZogQ0NQ6L4j9-V58WJMjm7zYCFwkJXSJzWu9UDM8><meta name=robots content="index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1"><meta name=googlebot content="index, follow"><meta name=googlebot-news content="index, follow"><meta name=bingbot content="index, follow"><link rel=alternate hreflang=zh href=https://m2pool.com/zh><link rel=alternate hreflang=en href=https://m2pool.com/en><link rel=alternate hreflang=x-default href=https://m2pool.com/en><meta property=og:title content="M2pool - Stable leading high-yield mining pool"><meta property=og:description content="M2Pool provides professional mining services, supporting multiple cryptocurrency mining"><meta property=og:url content=https://m2pool.com/en><meta property=og:site_name content=M2Pool><meta property=og:type content=website><meta property=og:image content=https://m2pool.com/logo.png><link rel=icon href=/favicon.ico><link rel=stylesheet href=//at.alicdn.com/t/c/font_4582735_7i8wfzc0art.css><title>M2pool - Stable leading high-yield mining pool</title><meta name=keywords content="M2Pool, cryptocurrency mining pool,Entropyx(enx),entropyx, bitcoin mining, DGB mining, mining pool service, 加密货币矿池, 比特币挖矿, DGB挖矿"><meta name=description content="M2Pool provides professional mining services, supporting multiple cryptocurrency mining, including nexa, grs, mona, dgb, rxd, enx"><meta name=format-detection content="telephone=no"><meta name=apple-mobile-web-app-capable content=yes><script defer src=/js/chunk-vendors-945ce2fe.648a91a9.js></script><script defer src=/js/chunk-vendors-aacc2dbb.d317c558.js></script><script defer src=/js/chunk-vendors-bc050c32.3f2f14d2.js></script><script defer src=/js/chunk-vendors-3003db77.d0b93d36.js></script><script defer src=/js/chunk-vendors-9d134daf.bb668c99.js></script><script defer src=/js/chunk-vendors-439af1fa.48a48f35.js></script><script defer src=/js/chunk-vendors-5c533fba.b9c00e08.js></script><script defer src=/js/chunk-vendors-96cecd74.a7d9b845.js></script><script defer src=/js/chunk-vendors-c2f7d60e.3710fdc2.js></script><script defer src=/js/chunk-vendors-89d5c698.2190b4ca.js></script><script defer src=/js/chunk-vendors-377fed06.159de137.js></script><script defer src=/js/chunk-vendors-5a805870.4cfc0ae8.js></script><script defer src=/js/chunk-vendors-cf2e0a28.c6e99da0.js></script><script defer src=/js/chunk-vendors-c9ff040c.57bd8c18.js></script><script defer src=/js/app-42f9d7e6.a2ad6942.js></script><script defer src=/js/app-d87c119a.9b7e8112.js></script><script defer src=/js/app-5c551db8.6078f6e3.js></script><script defer src=/js/app-b4c4f6ec.c346427f.js></script><script defer src=/js/app-45954fd3.88a2b2bc.js></script><script defer src=/js/app-ca0caf25.ba8086a4.js></script><script defer src=/js/app-cfd820c8.9d119032.js></script><script defer src=/js/app-f035d474.a2a8f5af.js></script><script defer src=/js/app-7023e5b0.fc505df9.js></script><script defer src=/js/app-113c6c50.0117a862.js></script><link href=/css/chunk-vendors-5c533fba.6f97509c.css rel=stylesheet><link href=/css/app-42f9d7e6.3510b1e0.css rel=stylesheet><link href=/css/app-d87c119a.8d130cfb.css rel=stylesheet><link href=/css/app-b4c4f6ec.d99a94fb.css rel=stylesheet><link href=/css/app-45954fd3.bdb4aecd.css rel=stylesheet><link href=/css/app-ca0caf25.a1364666.css rel=stylesheet><link href=/css/app-cfd820c8.2f7622f2.css rel=stylesheet><link href=/css/app-f035d474.0348646a.css rel=stylesheet><link href=/css/app-7023e5b0.b2dd9d63.css rel=stylesheet><link href=/css/app-113c6c50.36a20683.css rel=stylesheet></head><body><div id=app></div></body></html>

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

File diff suppressed because one or more lines are too long

Binary file not shown.

View File

@ -1 +1 @@
<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://m2pool.com/en</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>daily</changefreq><priority>1.0</priority></url><url><loc>https://m2pool.com/en/dataDisplay</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>https://m2pool.com/en/ServiceTerms</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>monthly</changefreq><priority>0.6</priority></url><url><loc>https://m2pool.com/en/apiFile</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/rate</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/nexaAccess</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/grsAccess</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/monaAccess</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/dgbsAccess</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/dgbqAccess</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/dgboAccess</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/rxdAccess</loc><lastmod>2025-08-01T09:09:41.699Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url></urlset>
<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://m2pool.com/en</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>daily</changefreq><priority>1.0</priority></url><url><loc>https://m2pool.com/en/dataDisplay</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>https://m2pool.com/en/ServiceTerms</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>monthly</changefreq><priority>0.6</priority></url><url><loc>https://m2pool.com/en/apiFile</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/rate</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>weekly</changefreq><priority>0.8</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/nexaAccess</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/grsAccess</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/monaAccess</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/dgbsAccess</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/dgbqAccess</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/dgboAccess</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/en/AccessMiningPool/rxdAccess</loc><lastmod>2025-08-08T09:11:31.988Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url></urlset>

Binary file not shown.

View File

@ -1 +1 @@
<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://m2pool.com/zh</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/dataDisplay</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/ServiceTerms</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/apiFile</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/rate</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/nexaAccess</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/grsAccess</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/monaAccess</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/dgbsAccess</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/dgbqAccess</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/dgboAccess</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/rxdAccess</loc><lastmod>2025-08-01T09:09:41.687Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url></urlset>
<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://m2pool.com/zh</loc><lastmod>2025-08-08T09:11:31.977Z</lastmod><changefreq>daily</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/dataDisplay</loc><lastmod>2025-08-08T09:11:31.977Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/ServiceTerms</loc><lastmod>2025-08-08T09:11:31.978Z</lastmod><changefreq>monthly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/apiFile</loc><lastmod>2025-08-08T09:11:31.978Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/rate</loc><lastmod>2025-08-08T09:11:31.978Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/nexaAccess</loc><lastmod>2025-08-08T09:11:31.978Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/grsAccess</loc><lastmod>2025-08-08T09:11:31.978Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/monaAccess</loc><lastmod>2025-08-08T09:11:31.978Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/dgbsAccess</loc><lastmod>2025-08-08T09:11:31.978Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/dgbqAccess</loc><lastmod>2025-08-08T09:11:31.978Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/dgboAccess</loc><lastmod>2025-08-08T09:11:31.978Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url><url><loc>https://m2pool.com/zh/AccessMiningPool/rxdAccess</loc><lastmod>2025-08-08T09:11:31.978Z</lastmod><changefreq>weekly</changefreq><priority>0.7</priority></url></urlset>

Binary file not shown.