当前位置: 首页 > news >正文

nextjs构建服务端渲染,同时使用Material UI进行项目配置

一、创建一个next项目

使用create-next-app来启动一个新的Next.js应用,它会自动为你设置好一切

运行命令:

npx create-next-app@latest

执行结果如下: 

 启动项目:

pnpm dev

执行结果: 

启动成功! 

二、安装Material UI依赖

根据Material UI官网介绍,截至2021年底,样式组件与服务器渲染的材质UI项目不兼容。这是因为babel-plugin风格的组件不能与@mui包中的styled()实用程序一起工作。有关详细信息,请参阅此GitHub问题。我们强烈建议在SSR项目中使用Emotion。

运行命令:

pnpm add @mui/material @emotion/styled @emotion/react @emotion/cache @mui/icons-material

 三、使用prettier美化项目代码

安装prettier相关依赖,及其文件配置

运行命令:

pnpm add prettier eslint-config-prettier eslint-plugin-prettier eslint-plugin-react-hooks -D

prettier文件配置.prettierrc.json

{"semi": true,"endOfLine": "auto","singleQuote": true,"trailingComma": "none","bracketSpacing": true,"jsxBracketSameLine": false,"vueIndentScriptAndStyle": false,"jsxBracketSameLine:": true,"htmlWhitespaceSensitivity": "ignore","wrapAttributes": true,"overrides": [{"files": "*.html","options": {"parser": "html"}}]
}

安装eslint相关依赖:

运行命令:

pnpm  add @typescript-eslint/parser @typescript-eslint/eslint-plugin eslint-import-resolver-typescript -D

eslint文件.eslintrc.json配置:

{"root": true,"extends": ["eslint:recommended", "next","prettier"],"env": {"es6": true,"node": true,"browser": true},"parserOptions": {"ecmaVersion": 12,"parser": "@typescript-eslint/parser"},"plugins": ["prettier", "react-hooks","@typescript-eslint"],"parser": "@typescript-eslint/parser","globals": {"chrome": true,"React":true},"settings": {"import/resolver": {"node": {"extensions": [".js", ".jsx", ".ts", ".tsx"]}}},"rules": {"prettier/prettier":"error"}
}

四、使用Prettier自动排序tailwind CSS类

为了使用Prettier自动排序tailwind CSS类,我们需要安装Prettier -plugin-tailwindcss。
运行如下命令安装插件:

pnpm add -D prettier-plugin-tailwindcss

prettier文件配置.prettierrc.json:

{"semi": true,"endOfLine": "auto","singleQuote": true,"trailingComma": "none","bracketSpacing": true,"jsxBracketSameLine": false,"vueIndentScriptAndStyle": false,"jsxBracketSameLine:": true,"htmlWhitespaceSensitivity": "ignore","wrapAttributes": true,"plugins": ["prettier-plugin-tailwindcss"],"overrides": [{"files": "*.html","options": {"parser": "html"}}]
}

五、安装sass

虽然项目当中已经安装了tailwind css进行样式处理,但是有时候不可避免的需要写点样式.因此,安装sass进行,样式的编写:

pnpm add sass -D

至此,一个使用Material UI组件,使用eslint、Prettier进行规范、美化代码的next项目就搭建完毕了。开始你的炫酷旅程吧!

http://www.lryc.cn/news/190062.html

相关文章:

  • Java 使用 Easyexcel 导出大量数据
  • 高效防汛决策:山海鲸可视化系统助力城市防洪
  • 易点云CFO向征:CFO不能只讲故事,价值创造才是核心
  • 【计算机网络】poll | epoll
  • C++设计模式_07_Bridge 桥模式
  • [JAVA版本] Websocket获取B站直播弹幕——基于直播开放平台
  • 第一个 Python 程序
  • 广告牌安全监测,保障户外广告牌的安全与稳定
  • 分类预测 | MATLAB实现KOA-CNN-GRU开普勒算法优化卷积门控循环单元数据分类预测
  • 进来了解实现官网搜索引擎的三种方法
  • OpenCV3-Python(7)模板匹配和霍夫检测
  • [C++11]花括号{}、initializer_list、auto、decltype
  • 在Android平板上使用code-server公网远程Ubuntu服务器编程
  • 宝塔上安装mysql版本比较和区别
  • uniapp微信小程序自定义封装分段器。
  • 文心一言 VS 讯飞星火 VS chatgpt (111)-- 算法导论10.2 2题
  • 小程序中使用echarts的相关配置以及折线图案例(简单易懂)
  • 前端面试回答不好的问题总结
  • 漏洞预警|CVE-2023-38545 Curl 和 libcurl 堆缓冲区溢出漏洞
  • 【Java 进阶篇】HTML 语义化标签详解
  • 【思维构造】Element Extermination—CF1375C
  • CSP模拟53联测15 D. 子序列
  • iceberg-flink 十一:在dlink代码中建表增加catalog地址。
  • 多列等高实现
  • 2023 泰山杯 --- Crypto wp
  • 蓝桥杯每日一题20233.10.10
  • 366. 寻找⼆叉树的叶⼦节点
  • python - excel 设置样式
  • Gemmini测试test文件chisel源码详解(一)
  • RabbitMQ中的手动应答和自动应答