nuxt3-api

服务器路由

Nuxt 会自动扫描 、 和 目录中的文件~/server/api~/server/routes~/server/middleware注册具有 HMR 支持的 API 和服务器处理程序。

每个文件都应该导出一个用defineEventHandler().

处理程序可以直接返回 JSON 数据,Promise或者用于event.res.end()发送响应。

👉

在Nitro 路线处理文档 中阅读更多内容。

例子

在中创建一个新文件server/api/hello.ts

/server/api/hello.ts

export default defineEventHandler((event) => {
  return {
    api: 'works'
  }
}) 

您现在可以使用await $fetch('/api/hello').

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Nuxt 中使用 vue-quill-editor 实现图片上传可以通过以下步骤实现: 1. 安装 `vue-quill-editor` 和 `quill-image-resize-module`: ``` npm install vue-quill-editor quill-image-resize-module ``` 2. 在 `nuxt.config.js` 中引入需要的样式和脚本: ``` head: { script: [ { src: 'https://cdn.quilljs.com/1.3.6/quill.js' }, { src: 'https://cdn.quilljs.com/1.3.6/quill.min.js' } ], link: [ { rel: 'stylesheet', type: 'text/css', href: 'https://cdn.quilljs.com/1.3.6/quill.snow.css' } ] } ``` 3. 在需要使用编辑器的组件中引入 `vue-quill-editor` 和 `quill-image-resize-module`: ```vue <template> <div> <quill-editor ref="myQuillEditor" v-model="content" :options="editorOption" @image-added="onImageAdded" /> </div> </template> <script> import { quillEditor, Quill } from 'vue-quill-editor' import ImageResize from 'quill-image-resize-module' export default { components: { quillEditor }, data() { return { content: '', editorOption: {} } }, mounted() { // 注册图片大小调整模块 Quill.register('modules/imageResize', ImageResize) this.editorOption = { modules: { toolbar: [ // 工具栏配置 [{ header: [1, 2, 3, false] }], ['bold', 'italic', 'underline', 'strike'], ['blockquote', 'code-block'], [{ list: 'ordered' }, { list: 'bullet' }], [{ script: 'sub' }, { script: 'super' }], [{ indent: '-1' }, { indent: '+1' }], [{ direction: 'rtl' }], [{ size: ['small', false, 'large', 'huge'] }], [{ header: [1, 2, 3, 4, 5, 6, false] }], [{ color: [] }, { background: [] }], [{ font: [] }], [{ align: [] }], ['clean'], ['link', 'image', 'video'] ], imageResize: { displaySize: true } } } }, methods: { onImageAdded($event) { // 图片上传 const file = $event.file const formData = new FormData() formData.append('file', file) axios.post('/api/upload', formData).then(res => { const imageUrl = res.data.url const quillEditor = this.$refs.myQuillEditor.quill const range = quillEditor.getSelection(true) quillEditor.insertEmbed(range.index, 'image', imageUrl) quillEditor.setSelection(range.index + 1) }) } } } </script> ``` 4. 通过 `@image-added` 事件监听图片上传,上传完成后,通过 `quillEditor.insertEmbed` 插入图片。 以上就是在 Nuxt 中使用 vue-quill-editor 实现图片上传的步骤。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值