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

网站开发需要准备什么软件网站建设款如何入账

网站开发需要准备什么软件,网站建设款如何入账,济南模版网站,北京东城做网站一、模块包的概念 1.模块分类: 核心模块:Node.js 内置模块(如 fs, http, path),无需安装直接引用。 本地模块:开发者自己编写的模块文件,通过相对路径引入。 第三方模块:通过 npm…

一、模块包的概念

1.模块分类

  • 核心模块:Node.js 内置模块(如 fshttppath),无需安装直接引用。
  • 本地模块:开发者自己编写的模块文件,通过相对路径引入。

  • 第三方模块:通过 npm 安装的模块,通常存储在 node_modules 目录。

  • 全局模块:安装在系统全局目录的模块(如 nodemonpm2),通常用于命令行工具。

2.模块化规范

  • CommonJS:Node.js 默认模块化规范,使用 require 和 module.exports

  • ES Modules (ESM):现代 JavaScript 模块标准,使用 import/export,Node.js 通过 .mjs 文件或 package.json 中设置 "type": "module" 支持。


二、package.json 文件详解

1.关键字段扩展

  • license:定义包的许可证(如 MITISC),开源项目必须明确。

  • engines:指定 Node.js 和 npm 的版本要求,例如:

    
    "engines": { "node": ">=18.0.0","npm": ">=9.0.0" 
    }

  • repository:代码仓库地址,便于协作和问题追踪。

  • keywords:包的关键词,方便在 npm 上搜索。

  • bin:定义可执行文件,常用于 CLI 工具(如 npm install -g 后全局使用命令)。

2.版本号语义化(SemVer)

  • MAJOR.MINOR.PATCH:例如 1.4.3

  • 版本符号

^1.2.3:允许升级 MINOR 和 PATCH 版本(兼容新功能,不破坏 API)。

~1.2.3:仅允许升级 PATCH 版本(仅修复 Bug)。

* 或 latest:安装最新版本(慎用,可能引入不兼容更新)。

3.依赖类型

  • dependencies:生产环境依赖(如 expresslodash)。

  • devDependencies:开发环境依赖(如 jesteslint)。

  • peerDependencies:宿主环境需提供的依赖(常见于插件开发,如 webpack 插件)。

  • optionalDependencies:可选依赖,安装失败不影响主体功能。


三、模块包的安装与管理

1.安装命令进阶

  • 精确版本安装npm install package@1.2.3

  • 开发依赖npm install eslint --save-dev

  • 一次性安装所有依赖npm install 或 npm ci(后者基于 package-lock.json,适合 CI/CD 环境)。

2.全局安装注意事项

  • 全局模块默认路径:可通过 npm root -g 查看。

  • 权限问题:在 Linux/macOS 中可能需要 sudo,但推荐使用 nvm 或修改 npm 全局目录权限。

3.依赖锁定文件

  • package-lock.json:记录精确依赖树,确保团队环境版本一致。

  • yarn.lock:Yarn 工具的锁定文件,与 npm 不兼容。

4.依赖安全与审计

  • 使用 npm audit 检查依赖漏洞。

  • 使用 npm audit fix 自动修复部分问题。


四、模块包的使用技巧

1.模块加载机制

  • 优先级:核心模块 > 当前目录 node_modules > 上级目录 node_modules(递归查找)。
  • 缓存机制:模块首次加载后会被缓存,后续 require 直接读取缓存。

2.模块导出与导入

  • CommonJS

    
    // math.js
    const add = (a, b) => a + b;
    module.exports = { add }; // 或 exports.add = add;// main.js
    const { add } = require('./math');

  • ES Modules

    
    // math.mjs
    export const add = (a, b) => a + b;// main.mjs
    import { add } from './math.mjs';

3.动态导入

  • 使用 require.resolve() 获取模块路径。
  • 使用 import() 函数实现异步加载(ESM)。


五、进阶工具与工作流

  1. npx 命令

    • 直接运行本地或远程的 npm 包命令,无需全局安装:

      npx create-react-app my-app

  2. 包管理工具对比

  • npm:Node.js 官方工具,功能全面。
  • yarn:Facebook 推出,速度快,支持工作区(workspaces)。

  • pnpm:节省磁盘空间,通过硬链接共享依赖。

    Monorepo 管理

  • 使用 yarn workspaces 或 pnpm workspace 管理多个子项目共享依赖。


六、常见问题与解决方案

1.依赖冲突

  • 现象:不同模块依赖同一包的不同版本。
  • 解决:使用 npm ls 分析依赖树,或升级冲突的包版本。

2.删除 node_modules

手动删除可能因嵌套过深失败,推荐使用 rimraf 工具:

npx rimraf node_modules

3.镜像加速

切换为国内镜像(如淘宝源)提升安装速度:

npm config set registry https://registry.npmmirror.com


七、最佳实践

  1. 依赖最小化:仅安装必要依赖,定期清理无用包。

  2. 版本锁定:提交 package-lock.json 或 yarn.lock 到版本控制。

  3. 环境隔离:使用 .npmrc 配置项目特定 npm 设置。

  4. 脚本自动化:利用 npm scripts 定义复杂工作流(如构建、测试、部署)。


http://www.dtcms.com/a/409613.html

相关文章:

  • 南京尘帆网站建设深圳网站建设比较
  • wordpress网站空白龙海网站开发
  • dede网站单页面怎么做洛阳网最新消息
  • 网站开发专业职业规划深圳建设网站上市
  • 怎么选择大连网站建设成都定制企业网站制作
  • wordpress站外链接页面搜狐焦点石家庄房产网
  • 网站设置反爬虫的常用方法有哪些亚马逊跨境电商新手入门
  • 网站建设与开发定制沈阳设计公司排名
  • 网站网站代理怎么做如何自己做众筹网站
  • 搜索网站logo怎么做android项目开发
  • 济宁网站建设seo自定义头像wordpress
  • 哪里有网站开发定制wordpress 如何修改导航链接
  • 网页设计介绍北京网站产品展示网站系统
  • 一诺互联网站建设公司门户网站建设公司渠道
  • 黑龙江省建设教育信息网站做响应式网站设计
  • 重庆微信网站制作专家做钢材都有什么网站
  • 建设网站基础知识安卓一键制作app软件
  • 微信公众平台微网站开发企业网站管理源码
  • 南宁建设银行缴费网站iis 二级网站 发布
  • 2018网站做外链html课程
  • 给几个手机网站怎么做自动跳转网站
  • 网站开发外包网站玉林市建设局网站
  • 简述网站建设方法wordpress忘记用户名
  • 西安免费做网站电话wordpress导航跟随
  • 网站管理过程2 如何写一份详细的网站开发方案
  • 网站域名和备案公司可以不一样么建筑人才网简历
  • 景区网站建设材料用宝塔给远程网站做备份
  • 门源县电子商务网站建设公司运营推广公司
  • 网站所有权问题正规网络推广服务
  • 国内网站建设深圳短视频seo搜索排名如何做