<template><div :class="$options.name"><div class="sg-head">接口代码生成工具</div><div class="sg-container"><div class="sg-start "><div style="margin-bottom: 10px;">接口地址列表</div><el-input style="margin-bottom: 10px;" type="textarea" :placeholder="`请粘贴apifox.com网站的内容`"v-model="textareaValue1" :rows="30" show-word-limit /><el-button type="primary" @click="createAPI">生成接口列表</el-button></div><div class="sg-center ">→</div><div class="sg-end "><div style="margin-bottom: 10px;">直接复制</div><el-input style="margin-bottom: 10px;" type="textarea" :placeholder="`请复制代码`" v-model="textareaValue2":rows="30" show-word-limit /><el-button type="primary" @click="copyAPI">复制</el-button></div></div></div>
</template><script>
export default {name: 'sgCreateAPI',data() {return {textareaValue1: '',textareaValue2: '',}},watch: {textareaValue1(newValue, oldValue) {newValue && this.createAPI(newValue)},},methods: {createAPI(d) {let texts = this.textareaValue1.split('\n').map(v => v.split('\t').join(''));let r = []texts.forEach((v, i, arr) => {if (i % 3 === 0 && v) {r.push([arr[i], arr[i + 2].split('/rp/')[1]])}});let apis = [];r.forEach(v => apis.push(`/* ${v[0]} */${v[1].split('/').slice(1).join('_')}({ data, doing }) { this.__sd("post", \`\${API_ROOT_URL}/${v[1]}\`, data, doing); },`));this.textareaValue2 = apis.join('\n');this.copyAPI(apis);},copyAPI(d) {this.$g.copy(this.textareaValue2, true);},},
};
</script><style lang="scss" scoped>
.sgCreateAPI {width: 100%;height: 100%;position: absolute;box-sizing: border-box;padding: 20px;.sg-head {display: flex;justify-content: center;align-items: center;font-size: 24px;font-weight: bold;color: #409EFF;margin-bottom: 10px;}.sg-container {display: flex;flex-wrap: nowrap;&>.sg-start {width: 50%;flex-grow: 1;}&>.sg-center {display: flex;justify-content: center;align-items: center;flex-grow: 1;margin: 0 10px;font-size: 24px;color: #409EFF;font-weight: bold;}&>.sg-end {width: 50%;flex-shrink: 0;}>>>textarea {max-height: revert;height: calc(100vh - 200px);word-wrap: break-word;word-break: break-all;white-space: break-spaces;}}
}
</style>
生成的接口请求代码是基于【Vue.js最新版】【基于jQuery Ajax】[sd.js]最新原生完整版for凯哥API版本_你挚爱的强哥的博客-CSDN博客【代码】【最新版】【基于jQuery Ajax】[sd.js]最新原生完整版for凯哥API版本。https://blog.csdn.net/qq_37860634/article/details/129976375