快速搭建 Nuxt2 项目

news2024/11/22 22:10:46

文章目录

  • 01 Nuxt 能提供哪些功能?有什么益处?
  • 02 快速搭建项目
    • 2.1 安装 create-nuxt-app 脚手架工具
    • 2.2 使用脚手架搭建项目

01 Nuxt 能提供哪些功能?有什么益处?

  1. 服务端渲染:Nuxt 是基于 Vue.js 的 服务端渲染 框架,可以生成静态的 HTML 文件并在服务器上进行渲染,将页面内容直接发送给浏览器。这种方式可以提高网站的首次加载速度,改善搜索引擎的索引和页面的 SEO 优化。
  2. 代码结构和组织:Nuxt 提供了一套约定优于配置的规则,使得开发者能够快速搭建和组织项目。通过按照规范将页面和组件放置在特定的目录中,可以更容易地维护和扩展代码。
  3. 自动路由配置:Nuxt 基于文件系统的路由配置,通过在 pages 目录下创建 .vue 文件,可以自动生成对应的路由配置,无需手动进行路由的配置。这样简化了路由管理的过程,提高了开发效率。
  4. 预渲染和静态站点生成:除了服务端渲染,Nuxt 还支持预渲染和静态站点生成。预渲染可以在构建过程中生成静态 HTML 文件,使得站点在浏览器中不依赖 JavaScript 也能正常访问。而静态站点生成则可以将整个站点生成为一组静态文件,可以直接部署到各种静态文件托管服务上,提供更高的性能和可扩展性。
  5. 插件和模块化:Nuxt 支持使用插件和模块来扩展功能。插件可以用于引入第三方库或自定义功能,而模块可以封装可重用的代码和配置,使得项目的功能和复用性更强。

02 快速搭建项目

2.1 安装 create-nuxt-app 脚手架工具

Nuxt2 Using create-nuxt-app
全局安装 create-nuxt-app

$ npm i -g create-nuxt-app

2.2 使用脚手架搭建项目

1)可以按照自己的倾向选择 npm / npx / yarn 运行命令

# 确保你已经安装了 npx (npx 从 npm 5.2.0 开始默认安装)
npx create-nuxt-app <my-project>

# Or 若你的 npm 的版本是 6.1 及以上,你可以选择使用 npm 运行
npm init nuxt-app@latest <my-project>

# Or 使用 yarn 运行:
yarn create nuxt-app <my-project>

本次示例中将使用 npx 运行命令:

$ npx create-nuxt-app <项目名>

2)上述命令回车后,所有配置的介绍和常用选择如下:

$ npx create-nuxt-app test-for-nuxt2

create-nuxt-app v5.0.0
✨  Generating Nuxt.js project in test-for-nuxt2
# nuxt 项目名称(若上述命令添加了项目名,则直接回车默认上述的项目名)
? Project name: (test-for-nuxt2)

# 选择 js 或 ts 作为项目的开发语言,不同选择会生成不同的 config 文件:tsconfig.json / jsconfig.json
? Programming language: (Use arrow keys)
> JavaScript
  TypeScript

# 选择包管理器
? Package manager: (Use arrow keys)
  Yarn
> Npm

# 选择 UI 库,nuxt 框架提供了许多选择,这里按需取用即可。若现在不需要 UI 库,可以选择 None,后续也可以再添加
? UI framework: (Use arrow keys)
  None
> Ant Design Vue
  BalmUI
  Bootstrap Vue
  Buefy
  Chakra UI
  Element
  Oruga
  Primevue
  Tachyons
  Tailwind CSS
  Windi CSS
  Vant
  View UI
  Vuetify.js

# 选择默认的模板引擎(常用的是 HTML,但如果想想试试 Pug 可以先去了解 https://www.pugjs.cn/api/getting-started.html)
? Template engine: (Use arrow keys)
> HTML
  Pug

# 选择 nuxt 扩展模块
? Nuxt.js modules: (Press <space> to select, <a> to toggle all, <i> to invert selection)
>(*) Axios - Promise based HTTP client # 安全且简单的 axios 和 nuxt.js 集成,用于 Http 请求(HTTP/HTTPS请求的Web App)
 ( ) Progressive Web App (PWA) # 稳定的 PWA 解决方案用于增强 Nuxt 对 PWA 的支持(渐进式应用程序)
 ( ) Content - Git-based headless CMS # 允许在content / dictionary 中写入内容,并通过像 API 一样的来获取文件(无头式内容管理系统)
  
# 选择 lint 工具
? Linting tools: (Press <space> to select, <a> to toggle all, <i> to invert selection)
>(*) ESLint # 代码检查工具
 (*) Prettier # 代码格式化工具
 (*) Lint staged files # 可以在代码提交前对待提交区代码进行一些自定义操作的工具,包括执行eslint检查等等
 ( ) StyleLint # css 代码检查工具
 ( ) Commitlint # commit 命令检查工具

# 选择单元测试需要的框架(若暂时不确定是否有这样的需求,可以先不选)
? Testing framework: (Use arrow keys)
> None
  Jest
  AVA
  WebdriverIO
  Nightwatch

# 选择渲染模式
? Rendering mode: (Use arrow keys)
> Universal (SSR / SSG) # 服务端渲染,若使用想要对 SEO 有益,就选择此项(一般选择 Nuxt 都会希望进行服务端渲染)
  Single Page App # 单页面应用渲染模式

# 选择部署目标,这里之所以可以选择部署目标是因为 nuxt 支持静态网页的生成,一般我们选服务端部署即可
? Deployment target: (Use arrow keys)
> Server (Node.js hosting)
  Static (Static/Jamstack hosting)

# 选择开发工具,按照指引(js 开发语言的推荐选择 jsconfig.json)
? Development tools: (Press <space> to select, <a> to toggle all, <i> to invert selection)
>(*) jsconfig.json (Recommended for VS Code if you're not using typescript)
 ( ) Semantic Pull Requests
 ( ) Dependabot (For auto-updating dependencies, GitHub only)

# 选择持续集成工具,按需选用即可
? Continuous integration: (Use arrow keys)
> None
  GitHub Actions (GitHub only)
  Travis CI
  CircleCI

# 选择版本控制系统,一般来说我们选择git版本控制系统,如果有别的需要,则选 none 按需引入即可
? Version control system: (Use arrow keys)
> Git
  None

3)最后一个选择完成后需要等待一段时间

create-nuxt-app v5.0.0
✨  Generating Nuxt.js project in test-for-nuxt2
? Project name: test-for-nuxt2
? Programming language: JavaScript
? Package manager: Npm
? UI framework: Ant Design Vue
? Template engine: HTML
? Nuxt.js modules: Axios - Promise based HTTP client
? Linting tools: ESLint, Prettier, Lint staged files, StyleLint
? Testing framework: None
? Rendering mode: Universal (SSR / SSG)
? Deployment target: Server (Node.js hosting)
? Development tools: jsconfig.json (Recommended for VS Code if you're not using typescript)
? Continuous integration: None
? Version control system: Git

......

🎉  Successfully created project test-for-nuxt2

  To get started:

        cd test-for-nuxt2
        npm run dev

  To build & start for production:

        cd test-for-nuxt2
        npm run build
        npm run start

直到出现上述 Successfully 相关提示后,就能按照命令行的提示在终端中运行新鲜出炉的项目了🎉

注意,若在运行的过程中有如下报错,可能是 stylelint 的原因:
stylelint 报错截图
将 stylelint 升级到最新版本就可以解决这个报错(安装好依赖后记得重启下项目噢)

$ npm install --save-dev stylelint@15.9.0 # 最新版本号

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/686685.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

文献学习-联合抽取-Joint entity and relation extraction based on a hybrid neural network

目录 1、Introduction 2、Related works 2.1 Named entity recognition 2.2 Relation classification 2.3 Joint entity and relation extraction 2.4 LSTM and CNN models On NLP 3、Our method 3.1 Bidirectional LSTM encoding layer 3.2 Named entity recogniton …

OpenStack(1)--创建实例

目录 一、上传镜像 1.1 新建目录 1.2 上传至glance 1.3 查看镜像 二、新建实例 2.1 获取秘钥 2.2 新建实例 2.3 新建实例admin-vm 2.4 获取实例VNC的url 2.5 nova常用命令 一、上传镜像 1.1 新建目录 上传名为cirros-0.3.4-x86_64-disk.img的Linux测试镜像&#xf…

Clock Rules(C Rules)

scan clocks的规则检查确保它们被正确的定义和操作。可以选择任意时钟规则检查的handling为error、warning、not或ignore。 Clock Terminology 时钟规则信息包含两个重复发生的概念,为了更好地使用这些信息,应该理解以下概念。 Clock Signals 如果一个信号能够改变一个se…

unity发布apk获取读写权限

实测版本&#xff1a;unity2019 操作&#xff1a;1.修改Manifest文件 2.在代码中直接调用API代码设置&#xff08;可能不用这一步&#xff09; Mac系统&#xff1a;Unity.app同级目录&#xff1a; PlaybackEngines/AndroidPlayer/Apk/ Win系统&#xff1a;Unity安装目录下…

5-响应式

01-媒体查询 基本写法 max-width&#xff1a;最大宽度&#xff08;小于等于&#xff09;min-width&#xff1a;最小宽度&#xff08;大于等于&#xff09; 书写顺序 min-width&#xff08;从小到大&#xff09;max-width&#xff08;从大到小&#xff09; 案例-左侧隐藏 需…

measure 一维测量 Metrology 二维测量

1维测量就是测长度&#xff0c;一个物体的长度。 2维测量就是在2维空间上测量&#xff0c;圆和矩形。 gen_measure_rectangle2 (TmpCtrl_Row, TmpCtrl_Column, TmpCtrl_Phi, TmpCtrl_Len1, TmpCtrl_Len2, 2464, 2056, nearest_neighbor, MsrHandle_Measure_01_0) * Measure 01:…

ChatGPT 实战:快速了解一个新领域

前段时间在社区里看到有人在分享&#xff1a;如何用 ChatGPT 麦肯锡方法论洞察一个行业&#xff0c;感觉这个方法在陌生行业的研究上很有帮助&#xff0c;同时我也一直好奇&#xff0c;投资经理在一两周的时间里如何快速了解一个新领域并做出投资决策的。先解决你的第一个疑问…

网络安全学习心得

我的学习心得&#xff0c;我认为能不能自学成功的要素有两点。 第一点就是自身的问题&#xff0c;虽然想要转行学习安全的人很多&#xff0c;但是非常强烈的想要转行学好的人是小部分。而大部分人只是抱着试试的心态来学习安全&#xff0c;这是完全不可能的。 所以能不能学成并…

Redis6之持久化操作

目录 RDB 触发 工作流程 持久化备份 优点 缺点 AOF 触发 频率配置 持久化流程 数据修复 优点 缺点 混合持久化 触发 优点 缺点 如何选择 redis是一个内存数据库&#xff0c;一旦断电或服务器进程退出&#xff0c;内存数据库中的数据将全部丢失&#xff0c;所以…

【计算机视觉】中科院发布Fast SAM,精度相当SAM,速度提升了50倍!

文章目录 一、导读二、介绍三、方法3.1 实例分割3.2 提示引导选择3.2.1 点提示3.2.2 框提示3.2.3 文本提示 四、实验结果五、不足之处六、结论 一、导读 SAM已经成为许多高级任务&#xff08;如图像分割、图像描述和图像编辑&#xff09;的基础步骤。然而&#xff0c;其巨大的…

【云原生丶Docker】Docker容器常用命令大全

在 Docker 核心概念理解 一文中&#xff0c;我们知道 Docker容器 其实就是一个轻量级的沙盒&#xff0c;应用运行在不同的容器中从而实现隔离效果。容器的创建和运行是以镜像为基础的&#xff0c;容器可以被创建、销毁、启动和停止等。本文将介绍下容器的这些常用操作命令。 1、…

2、电商数仓(业务数据采集平台)电商业务流程、电商常识、电商系统表结构、业务数据模拟、业务数据采集模块

1、电商业务简介 1.1 电商业务流程 电商的业务流程可以以一个普通用户的浏览足迹为例进行说明&#xff0c;用户点开电商首页开始浏览&#xff0c;可能会通过分类查询也可能通过全文搜索寻找自己中意的商品&#xff0c;这些商品无疑都是存储在后台的管理系统中的。 当用户寻找…

imx6ull——多点电容触摸

电容触摸寄存器 触点最多5个 触摸屏实现由 IIC驱动、中断驱动、 input子系统组成 触摸屏类型Type A和 Type B Type A&#xff1a;适用于触摸点不能被区分或者追踪&#xff0c;此类型的设备上报原始数据 (此类型在实际使 用中非常少&#xff01; Type B&#xff1a;适用于有…

SikuliX 实战

一. SikuliX是什么 SikuliX的前身是 Sikuli。Sikuli是由MIT&#xff08;麻省理工学院&#xff09;研究团队发布的一种基于OpenCV图像识别技术的自动化工具软件。 Sikuli 是2009 年由在麻省理工学院用户界面设计小组作为一个开源研究项目&#xff0c;负责人分别是Tsung-Hsiang …

42 # 前端 blob 类型

前端的二进制 文件类型 Blob&#xff1a;二进制文件类型input 的 typefile&#xff1a;file 类型&#xff0c;继承于 Blob 前端实现下载功能 实现下载字符串到文件里&#xff0c;需要将字符串包装成二进制类型 <!DOCTYPE html> <html lang"en"><h…

文字对话如何配音?安利你三款制作对话配音的软件

对话配音怎么配&#xff1f;安利三个好用的对话配音软件给你 一分钟告诉你对话配音怎么配 对话配音怎么配&#xff1f;超简单的对话配音制作教程来啦 对话配音软件有哪些&#xff1f;给你安利这三款对话配音软件 对话配音如何操作&#xff1f;分享你三个对话配音小技巧 在电…

想学PMP,有考过的同学给个建议嘛?

PMP中国和国外的考试形式略有不同&#xff0c;这里只介绍一下PMP中国考试的相关信息。 1.PMP考试相关信息 考试形式&#xff1a;笔试 考试时间&#xff1a;230分钟&#xff08;3小时50分钟&#xff09;&#xff0c;一般考试时间在上午9:00~12:50&#xff0c;也会因为特殊情况…

C++primer(第五版)第二章(变量和基本类型)

2.1基本内置类型 2.1.1算术类型 C的基本内置类型包括算数类型和空类型,空类型就是void,算术类型我从原书中截下来放在下面: 从上表我们可以得知C规定int至少和short一样大,long至少和int一样大,longlong至少和long一样大. 其中char(字符)类型支持国际化,所以char会确保可以放…

学Java还是学Android?如何选择?

学Java和学Android都有其各自的好处和应用场景。下面是一些关于学习Java和学习Android的信息&#xff0c;以帮助你做出选择&#xff1a;刚好我这里有嵌入式、plc、单片机的资料需要的在评论区扣6或私我 学习Java&#xff1a; Java是一种通用的编程语言&#xff0c;广泛应用于服…

Simulink自动把所有的double数据转换成single数据

目录 前言 子系统double自动转single操作步骤 总结 前言 在基于模型的开发建模中&#xff0c;模块大多默认的数据类型是double&#xff0c;很多MCU支持的是单精度的浮点&#xff0c;生成代码的部分需要把double转成single数据类型&#xff0c;当然在建模的时候可以配置每一…