Nuxt3服务端渲染项目简单搭建

目录

1.准备阶段

2.创建项目

3.安装需要的模块

1)安装ArcoDesign/ElementPlus

2)安装tailwindcss

4.目录结构

5.网站TDK设置


本篇文章相关的官方网站:

1. nuxt3:Nuxt 中文站 - 直观的Web框架 Nuxt3文档 · Nuxt

2. vue3:https://cn.vuejs.org/

3. tailwindcss:Tailwind CSS - TailwindCSS中文文档

4.arcoDesign:Arco Design - 企业级产品的完整设计和开发解决方案

5.elementPlus:https://element-plus.org/zh-CN/

1.准备阶段

nvm多版本node管理工具:nvm详细安装使用教程(nvm-node多版本管理工具)

VSCode插件(在VSCode扩展中搜索即可安装):Vue - Official - Visual Studio Marketplace

目前我的相关版本配置(node/npm):

2.创建项目

1)运行命令pnpm dlx nuxi@latest init <project-name>

2)进入项目根目录,打开过控制台运行 pnpm i 安装包,在vscode中一样的

3)使用pnpm run dev 运行项目,正常启动可通过链接访问,初始化就完成了

4)app.vue修改(注释内容就是上图默认内容,可删除)

html 复制代码
<template>
  <!-- <div>
    <NuxtRouteAnnouncer />
    <NuxtWelcome />
  </div> -->
  <NuxtLayout>
    <NuxtPage />
  </NuxtLayout>
</template>

3.安装需要的模块

1)安装ArcoDesign/ElementPlus

ArcoDesign:pnpm add -D arco-design-nuxt-module

ElementPlus:pnpm install element-plus

pnpm install @element-plus/nuxt -D

安装完之后在nuxt.config.ts中添加

javascript 复制代码
export default defineNuxtConfig({
  // ...
  modules: [
    'arco-design-nuxt-module',
    '@element-plus/nuxt'
  ]
})

在项目跟目录下新建pages文件夹,pages下新建index.vue (新建页面需要重启才能加载出来,否则会报错)

html 复制代码
<script setup lang="ts"></script>

<template>
  <div>
    <!-- ArcoDesign测试 -->
    <a-button type="primary">ArcoDesign</a-button>
    <!-- ElementPlus测试 -->
    <el-button type="primary">ElementPlus</el-button>
  </div>
</template>

2)安装tailwindcss

pnpm add --save-dev @nuxtjs/tailwindcss

安装完之后在nuxt.config.ts中添加

javascript 复制代码
export default defineNuxtConfig({
  // ...
  modules: [
    '@nuxtjs/tailwindcss'
  ]
})

修改pages-->index.vue

javascript 复制代码
<script setup lang="ts"></script>

<template>
  <div class="w-80 h-80 bg-black flex justify-around items-center">
    <!-- ArcoDesign测试 -->
    <a-button type="primary">ArcoDesign</a-button>
    <!-- ElementPlus测试 -->
    <el-button type="primary">ElementPlus</el-button>
  </div>
</template>

像pinia,eslint,stylelint, prettier,dayjs,i18n...这些如有需要自行安装,这里就不再展示了

4.目录结构

官网:.nuxt/ · Nuxt 目录结构

5.网站TDK设置

nuxt.config.ts中修改

javascript 复制代码
export default defineNuxtConfig({
  // ...
  app: {
    head: {
      htmlAttrs: {
        lang: "zh-CN",
      },
      title: "网站title",
      charset: "utf-8",
      viewport:
        "width=device-width, initial-scale=1, maximum-scale=1, user-scalable=0",
      meta: [
        { name: "description", content: "description" },
        { name: "keywords", content: "keywords,keywords" },
      ],
      // 网站图标
      link: [{ rel: 'icon', type: 'image/x-icon', href: '/favicon.ico' }],
    },
    pageTransition: { name: "page", mode: "out-in" },
  },
})

注:简单看看就好!!!

相关推荐
kk晏然4 分钟前
TypeScript 错误类型检查,前端ts错误指南
前端·react native·typescript·react
纆兰14 分钟前
汇款单的完成
前端·javascript·html
Lsx_32 分钟前
案例+图解带你遨游 Canvas 2D绘图 Fabric.js🔥🔥(5W+字)
前端·javascript·canvas
2501_944521001 小时前
rn_for_openharmony商城项目app实战-主题设置实现
javascript·数据库·react native·react.js·ecmascript
北辰alk1 小时前
Vue 路由跳转完全指南:8种跳转方式深度解析
vue.js
北辰alk1 小时前
Vue v-for 遍历对象顺序完全指南:从混乱到可控
vue.js
m0_471199631 小时前
【场景】如何快速接手一个前端项目
前端·vue.js·react.js
北辰alk1 小时前
Vue Router 中 route 和 router 的终极区别指南
vue.js
榴莲CC1 小时前
抗干扰LED数显屏驱动VK1624 数码管显示芯片 3线串行接口
前端
lili-felicity1 小时前
React Native for Harmony 个人消息列表最新消息置顶实现(多维度权重统计)
javascript·react native·react.js