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

高校建设主流的校园网站yahoo搜索

高校建设主流的校园网站,yahoo搜索,上传网站中ftp地址写什么,wordpress get image最近在看vue3相关的知识的时候,发现了一个新的打包工具,至少于我而言是新鲜的。它就是rollup.js。一说到JS打包、合并、压缩、模块处理等都会想到webpack,这是王者,当然入门的难度偏高。而vue3中搭配的vite运行速度确实非常快&…

最近在看vue3相关的知识的时候,发现了一个新的打包工具,至少于我而言是新鲜的。它就是rollup.js。一说到JS打包、合并、压缩、模块处理等都会想到webpack,这是王者,当然入门的难度偏高。而vue3中搭配的vite运行速度确实非常快,里边有很多的rollup.js相关的回调函数。而我们今天就来简单的看看rollup.js打包神器。官网地址为Rollup | Rollup

简介

Rollup is a module bundler for JavaScript which compiles small pieces of code into something larger and more complex, such as a library or application. 

Rollup是一个用于JavaScript的模块打包器,它将多数小块代码编译成更大、连续的代码。因为浏览器是需要有一个整体脚本(代码文件)才能够运行的,对于一个集合的项目、产品,浏览器没有相关的合并功能。

浏览器需要脚本打包,主要原因有三个。

(1)早期的浏览器不支持模块,大型网页项目只能先合并成单一脚本再执行。

(2)Node.js 的模块机制与浏览器不兼容,必须通过打包工具进行兼容处理。

(3)浏览器加载一个大脚本,要比加载多个小脚本,性能更好。

安装

npm install --global rollup

这样安装可以让 Rollup 成为全局可用的命令行,你也可以仅将其安装于本地

npm install rollup --save-dev

也可以不安装直接使用,就是把下面所有命令中的rollup,替换成npx rollup(参见《npx 使用教程》)。

第一次使用,可以运行下面的命令,查看一下帮助。

$ rollup --help
# 或者
$ npx rollup --help

配置rollup.config.js文件

Rollup 使用一个 rollup.config.js 文件进行配置。

// rollup.config.js
export default {input: 'src/index.js',output: {file: 'dist/bundle.js',format: 'umd'}
};

配置跟其他工具基本一致,从入口文件 index.js 打包后输出文件 bundle.js。format 是生成包的格式,可选有 amd,cjs,es,iife,umd,umd 是通用模块定义,打包后可以通过 <script> 标签引入,也可以通过 import 等方式引入,作为一个 JS 库要适用各个场景,应选择 umd 。

babel

Rollup 通过插件在打包的关键过程中更改行为,babel的插件就是 rollup-plugin-babel,需要先安装相关依赖

npm i rollup-plugin-babel@latest @babel/core @babel/preset-env -D

新建 .babelrc 文件,配置 babel

{"presets": ["@babel/preset-env"]
}

代码压缩

npm i rollup-plugin-uglify -D

因为 rollup-plugin-uglify 无法压缩 ES6 的语法,所以必须先用 babel 转。如果想直接压缩 ES6 的语法,可换成 rollup-plugin-terser

ESLint

规范代码,书写规则。

npm i rollup-plugin-eslint -D

然后初始化生成一个 ESLint 配置文件 ./node_modules/.bin/eslint --init

那么最终的 rollup.config.js 配置文件如下:

import babel from 'rollup-plugin-babel';
import { uglify } from 'rollup-plugin-uglify';
import { eslint } from "rollup-plugin-eslint";
export default {input: './index.js',output: {file: 'dist/bundle.js',name: 'People',format: 'umd'},plugins: [eslint({fix: true,exclude: 'node_modules/**'}),babel({exclude: 'node_modules/**'}),uglify()]
};

例子

下面,就用 rollup.js 打包两个简单的脚本:库文件 a.js 和入口脚本 main.js。

// a.js
const PI = 3.1415;
const E = 12.718;export function aPi(x) {return 2*x + PI;
}export function aE(x) {return 2*x + E; 
}
// main.js
import { aPi } from './a.js';console.log(aPi(102));
$ rollup main.js

打包时只需给出入口脚本 main.js,rollup 会自动把依赖项打包进去。

打包结果默认输出到屏幕。

打包结果如下所示:

const PI = 3.14;function aPi(x) {return x + PI;
}console.log(aPi(10));

使用参数--file [FILENAME],将打包结果保存到指定文件。

$ rollup main.js --file bundle.js

打包结果会根据引用来进行打包,把没有用到的方法、代码剔除,从而使代码更加简洁。

转成 CommonJS 模块

rollup 还支持 ES 模块转成 CommonJS 模块,使用参数--format cjs就可以了。

$ rollup add.js --format cjs

当然,rolljs的功能还有很多,比如如何添加typescript,如何开发插件,摸索一下就可以了。基本上来说不会特别复杂。

借鉴文章

打包工具 rollup.js 入门教程 - 阮一峰的网络日志

简介 | rollup.js 中文文档 | rollup.js中文网

Rollup.js: 开源JS库的打包利器_南乔几经秋的博客-CSDN博客_rollup.js

http://www.wangmingla.cn/news/26672.html

相关文章:

  • 网站建设公司圣辉友联长春网站排名提升
  • 建设银行广州支行网站今日热搜第一名
  • 开发手机app软件公司深圳seo优化公司排名
  • 商城网站开发费用微商营销
  • wordpress 仿网址seo优化排名
  • seo网站结构seo专员是指什么意思
  • 福州公关公司网络seo是什么工作
  • 自己做免费手机网站企业网站排名优化价格
  • 郑州模板建站哪家好百度下载app下载
  • 闵行网站制作网站收录什么意思
  • 做网站哪家公司专业广州seo成功案例
  • 苏州seo关键词排名汕头seo
  • 手机如何做任务赚钱的网站免费的黄冈网站代码
  • 网站建设7个基本流程图营销推广ppt
  • 怎么在手机上制作网站百度竞价是seo还是sem
  • 微信公众号制作方法seo基础教程视频
  • 网站推广怎么写怎样在百度上免费做广告
  • 中园建设银行网站百度视频seo
  • 如何查询公司网站顶级域名信阳网站推广公司
  • 化工企业常用推广网站好的产品怎么推广语言
  • 网站建设与管理就业岗位百度搜索引擎广告投放
  • 给公司做门户网站百度推广优化公司
  • 网站如何做seo优化教程长春seo推广
  • 重庆新闻频道直播 今天seo应用领域有哪些
  • 安徽省建设总站网站网站数据统计工具
  • 新思域设计公司网站建设淄博网站推广
  • 自己做电影下载网站sem优化技巧
  • 怎么做黑彩黑彩网站公司网站设计模板
  • 移动网站建设多少钱软文自动发布软件
  • 做网站用虚拟主机还是用服务器第三方平台推广引流