
感觉每次重新安装一次vue运行环境都会遇到一些问题,这次在安装完成nodejs之后,没有重启电脑情况,直接运行npm install安装依赖时,就提示报错了。

这个错误是因为 PowerShell 的执行策略限制导致的。以下是几种解决方法:
以管理员身份打开 PowerShell
在开始菜单搜索 “PowerShell”
右键点击 “Windows PowerShell”,选择 “以管理员身份运行”
执行以下命令:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
或者更宽松的策略:
Set-ExecutionPolicy -ExecutionPolicy Unrestricted -Scope CurrentUser
运行后就不会报错了,显示依赖包正在下载中,npm install,会根据配置文件下载对应的依赖,自动创建文件夹node_modules保存对应的依赖包。


Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope Process
暂时使用 CMD 代替 PowerShell:
npm install 你的包名
powershell -ExecutionPolicy Bypass -File "C:\Program Files\nodejs\npm.ps1"
建议使用方法1,设置 RemoteSigned 策略,这样:
可以运行本地脚本
从互联网下载的脚本需要数字签名
平衡了安全性和便利性
完成后,重新打开终端,npm 命令应该可以正常工作了。
如果对nodejs概念有点忘记了,那么可以看看下面详细介绍回顾回顾下。
Node.js 是一个基于 Chrome V8 引擎 的 JavaScript 运行时环境,让开发者能够使用 JavaScript 编写服务器端应用程序。
// 非阻塞代码示例 const fs = require('fs'); // 非阻塞方式读取文件 fs.readFile('file.txt', 'utf8', (err, data) => { if (err) throw err; console.log(data); }); console.log('程序继续执行,不会等待文件读取完成');
使用事件循环处理并发
通过异步操作避免线程阻塞
适合 I/O 密集型应用
由 Google 开发
将 JavaScript 编译为机器码
高性能执行
跨平台异步 I/O 库
处理事件循环
提供线程池
const http = require('http'); // HTTP 服务器 const fs = require('fs'); // 文件系统 const path = require('path'); // 路径处理 const events = require('events'); // 事件处理
# 下载安装包从官网 # 或使用包管理器 # Windows Chocolatey choco install nodejs # macOS Homebrew brew install node
node --version # 查看 Node.js 版本 npm --version # 查看包管理器版本
const http = require('http'); const server = http.createServer((req, res) => { res.writeHead(200, {'Content-Type': 'text/html'}); res.end('<h1>Hello Node.js!</h1>'); }); server.listen(3000, () => { console.log('服务器运行在 http://localhost:3000'); });
const fs = require('fs').promises; async function readFile() { try { const data = await fs.readFile('example.txt', 'utf8'); console.log(data); } catch (error) { console.error('读取文件出错:', error); } }
// math.js exports.add = (a, b) => a + b; exports.multiply = (a, b) => a * b; // app.js const math = require('./math'); console.log(math.add(2, 3)); // 5
npm init # 初始化项目 npm install express # 安装包 npm install -g nodemon # 全局安装 npm update # 更新包 npm run start # 运行脚本
{ "name": "my-app", "version": "1.0.0", "scripts": { "start": "node app.js", "dev": "nodemon app.js" }, "dependencies": { "express": "^4.18.0" } }
API 服务器 (RESTful, GraphQL)
实时应用 (聊天室、游戏)
微服务架构
命令行工具
Web 爬虫
SSR (服务器端渲染)
CPU 密集型任务 (图像处理、视频编码)
大型科学计算
Express.js - Web 应用框架
Socket.IO - 实时通信
Mongoose - MongoDB ODM
Sequelize - SQL ORM
Jest - 测试框架
Webpack - 模块打包
Nodemon - 自动重启开发服务器
PM2 - 进程管理
ESLint - 代码检查
Prettier - 代码格式化
前后端语言统一 (JavaScript)
高性能和非阻塞 I/O
庞大的生态系统 (npm)
活跃的社区支持
快速开发
回调地狱 (Callback Hell)
单线程限制 CPU 密集型任务
相对年轻的生态系统
频繁的 API 变化
基础 - JavaScript 语法、Node.js 核心模块
框架 - Express.js、Koa
数据库 - MongoDB、MySQL
认证 - JWT、OAuth
部署 - Docker、云平台
Node.js 让 JavaScript 从浏览器走向服务器,开创了全栈开发的新时代!