Node.js和strapi安装 | 青训营笔记

410 阅读2分钟

这是我参与「第五届青训营」伴学笔记创作活动的第 7 天


一.Node.js应用场景
  • 前端工程化(目前难以替代)
  • web服务端应用
    学习曲线平缓,运行效率高,SSR
  • Electron跨桌面应用(vscode,zoom)

二.Node.js运行结构

特点:

  • 异步I/O 执行I/O操作不阻塞线程、额外占用内存等,在响应返回后恢复操作
  • 单线程 主线程是单线程
    四个线程:JS线程+UV线程池+ V8任务线程池 +V8 Inspector线程
    不需要锁
  • 跨平台

线程池:在程序运行开始,创建好多个线程挂起等待任务。线程不回收,直接进入等待队列
多线程:任务来的时候创建,然后执行任务,线程完成任务后回收


三.React SSR

避免重复写代码
qps较低,要考虑服务器端渲染的情况
难点:需要处理打包代码


安装strapi的一点体会:
strapi是headless cms

安装strapi前需要安装好Node.js,最好有nvm管理版本(window是nvm4w),在安装过程中可能要根据strapi升降node版本

node14.x.x和18.x.x版本都没有成功,最后是node16+ubuntu成功的(无vs),成功会弹出一个界面,创建项目成功不等于能正常运行,会显示(keep trying,cd 项目路径 && npm install)

看下载下来的文件,strapi似乎采用的是v6

ubuntu下载前更新apt,一开始忘了更新,下载的node居然是10.x.x版本的

npm和yarn要全局安装,环境变量配置尽量在一个位置(yarn的cache在c盘,global在d盘,报错)
如果create报错先进入项目里在npm install

——quickstart模式下调用的是本地Sqlite数据库,就不用再配置其他数据库,会相对比较方便
安装依赖环境时间比较久,多多等等就好了

从strapi的开发手册来看,目前window系统只支持winow10,window11还太清楚能不能成功