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

互联网网站建设是什么/福州百度首页优化

互联网网站建设是什么,福州百度首页优化,做企业网站到哪里找,wordpress 彩色标签云插件/** 2020-7-8冷雨看前端今日高考最后一天:考生加油! */ 入门指导的一些基础项目,欢迎新手下载亲自调试看下 入门简单案例 entry // 单入口entry:{index:./src/js/index.js},// 多入口entry:{index:./src/js/index.js,test:./src/js/test.…

/**

  • 2020-7-8
  • 冷雨看前端
  • 今日高考最后一天:考生加油!
    */

入门指导的一些基础项目,欢迎新手下载亲自调试看下

入门简单案例

entry

  // 单入口entry:{index:'./src/js/index.js'},// 多入口entry:{index:'./src/js/index.js',test:'./src/js/test.js'},

output

  output: {// [name]:取文件名filename: 'js/[name].[hash:10].js',//文件哈希值前面十位path: resolve(__dirname, 'build')//当前路径下会新建一个build路径},

loader

oader 让 webpack 能够去处理那些非 JavaScript 文件(webpack 自身只理解 JavaScript)。loader 可以将所有类型的文件转换为 webpack 能够处理的有效模块

module: {rules: [{ test: /\.css$/, use: 'css-loader' },{ test: /\.ts$/, use: 'ts-loader' }]}

plugins

const HtmlWebpackPlugin = require('html-webpack-plugin');//html模板插件
const {BundleAnalyzerPlugin} = require('webpack-bundle-analyzer');//依赖分析插件
const {CleanWebpackPlugin} = require('clean-webpack-plugin');//清除原bundle纪录的插件```javascript
plugins: [new HtmlWebpackPlugin({  filename: 'index.html',template: 'src/index.html'}),new BundleAnalyzerPlugin(),new CleanWebpackPlugin({verbose: true,})],

mode

development:开发模式下
production:生成模式下
通常我们会配置两份,一份专门用来开发测试用,一份专门用线上环境

optimization

optimization: {splitChunks: {chunks: 'all'// 默认值,可以不写~,如果不写,系统会默认有自己的一套规则/* minSize: 30 * 1024, // 分割的chunk最小为30kbmaxSize: 0, // 最大没有限制minChunks: 1, // 要提取的chunk最少被引用1次maxAsyncRequests: 5, // 按需加载时并行加载的文件的最大数量maxInitialRequests: 3, // 入口js文件最大并行请求数量automaticNameDelimiter: '~', // 名称连接符name: true, // 可以使用命名规则cacheGroups: {// 分割chunk的组// node_modules文件会被打包到 vendors 组的chunk中。--> vendors~xxx.js// 满足上面的公共规则,如:大小超过30kb,至少被引用一次。vendors: {test: /[\\/]node_modules[\\/]/,// 优先级priority: -10},default: {// 要提取的chunk最少被引用2次minChunks: 2,// 优先级priority: -20,// 如果当前要打包的模块,和之前已经被提取的模块是同一个,就会复用,而不是重新打包模块reuseExistingChunk: true} }*/},// 将当前模块的记录其他模块的hash单独打包为一个文件 runtime// 解决:修改a文件导致b文件的contenthash变化runtimeChunk: {name: entrypoint => `runtime-${entrypoint.name}`},minimizer: [// 配置生产环境的压缩方案:js和cssnew TerserWebpackPlugin({// 开启缓存cache: true,// 开启多进程打包parallel: true,// 启动source-mapsourceMap: true})]}

默认规则:
可以共享新块,或者模块来自node_modules文件夹
新的块将大于30kb(在min + gz之前)
按需加载块时并行请求的最大数量将小于或等于6
初始页面加载时并行请求的最大数量将小于或等于4

bundle分析

webpack会根据你
1、entry入口
2、import())动态引入

import(/* webpackChunkName: 'testChunk2' */'./test2.js').then(({ mul }) => {//Magic Comments(魔术注释法)https://webpack.js.org/api/module-methods/#magic-commentsconsole.log(mul(1, 2));
});

3、optimization下的splitChunks拆分代码,不设置optimization,也会采用系统默认的规则

特别功能说明:
all:把动态和非动态模块同时进行优化打包;所有模块都扔到 vendors.bundle.js 这边vendors名字我们可以自行配置,系统默认就采用vendors命名
initial:把非动态模块打包进 vendor,动态模块优化打包
async:把动态模块打包进 vendor,非动态模块保持原样
字段优先级:
minSize > maxSize > maxInitialRequest/maxAsyncRequests

Node.js解析模块流程

为了理解TypeScript编译依照的解析步骤,先弄明白Node.js模块是非常重要的。 通常,在Node.js里导入是通过 require函数调用进行的。 Node.js会根据 require的是相对路径还是非相对路径做出不同的行为。

相对路径很简单。 例如,假设有一个文件路径为 /root/src/moduleA.js,包含了一个导入var x = require("./moduleB"); Node.js以下面的顺序解析这个导入:

检查/root/src/moduleB.js文件是否存在。

检查/root/src/moduleB目录是否包含一个package.json文件,且package.json文件指定了一个"main"模块。 在我们的例子里,如果Node.js发现文件 /root/src/moduleB/package.json包含了{ “main”: “lib/mainModule.js” },那么Node.js会引用/root/src/moduleB/lib/mainModule.js。

检查/root/src/moduleB目录是否包含一个index.js文件。 这个文件会被隐式地当作那个文件夹下的"main"模块。

你可以阅读Node.js文档了解更多详细信息:file modules 和 folder modules。

但是,非相对模块名的解析是个完全不同的过程。 Node会在一个特殊的文件夹 node_modules里查找你的模块。 node_modules可能与当前文件在同一级目录下,或者在上层目录里。 Node会向上级目录遍历,查找每个 node_modules直到它找到要加载的模块。

还是用上面例子,但假设/root/src/moduleA.js里使用的是非相对路径导入var x = require(“moduleB”);。 Node则会以下面的顺序去解析 moduleB,直到有一个匹配上。

/root/src/node_modules/moduleB.js
/root/src/node_modules/moduleB/package.json (如果指定了"main"属性)
/root/src/node_modules/moduleB/index.js

/root/node_modules/moduleB.js
/root/node_modules/moduleB/package.json (如果指定了"main"属性)
/root/node_modules/moduleB/index.js

/node_modules/moduleB.js
/node_modules/moduleB/package.json (如果指定了"main"属性)
/node_modules/moduleB/index.js
注意Node.js在步骤(4)和(7)会向上跳一级目录。
参考链接地址:node.js模块解析

http://www.lbrq.cn/news/1264213.html

相关文章:

  • 临朐网站制作/网站维护费用
  • wordpress小工具用不/seo优化培训机构
  • 佛山网站建设网络公司/有免费做网站的吗
  • 网站备案个人和企业的区别/手机百度搜索
  • 网站制作 价格/网站优化系统
  • 哈尔滨品牌建站软件/湖南企业seo优化
  • dw做网站插入百度地图/应用市场
  • 风雨同舟网站建设/网站如何注册
  • 广州官网建站/线下引流推广方法
  • 青浦网站优化/seo 优化 工具
  • 云南建设厅网站/产品推广方式
  • 政府与机构类网站/理发培训专业学校
  • 我想做一个网站怎么做的/销售培训课程一般有哪些
  • 如何更改公司网站内容/网络推广的方法和技巧
  • 阜新门户网站建设/网站seo的方法
  • 免费查公司查老板/seo优化推广工程师
  • 建设网站文章哪里下载/企业网站seo案例分析
  • 大连网站优化多少钱/投放广告的网站
  • 免费网站空间申请教程/如何推广app
  • 招商网站开发文档/免费推广的网站有哪些
  • 启航做网站怎么样/微信推广方式有哪些
  • 山西网站建设开发/百度搜索推广收费标准
  • 北京电脑培训网站/百度搜索关键词推广
  • 智能网站建设/怎么样建一个网站
  • wordpress 文章页面模板/深圳关键词优化报价
  • 怎么做网站才能吸引人/产品软文范例800字
  • 湖南涟钢建设有限公司网站/提交链接
  • 网站建设-好发信息网/六安seo
  • 返利网站方案/域名查询网址
  • 刷赞网站推广软件/数字经济发展情况报告
  • C++与Go的匿名函数编程区别对比
  • 数据结构代码
  • sifu mod制作 相关经验
  • Kafka——关于Kafka动态配置
  • 半导体物理复习
  • MFC 实现托盘图标菜单图标功能