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

手表网站欧米茄官网常州建设网站公司

手表网站欧米茄官网,常州建设网站公司,描述网站建设的基本流程图,WordPress多种类文件上传webpack和TypeScript 安装webpack相关内容安装TS相关内容配置初始化数据初始化运行展示和目录展示报错解决(缺失文件配置) 安装前端必备神奇lodash测试一下entry配置index.html模板配置修改打包出来的index.html的titleinject注入chunks 属性多页面配置 …

webpack和TypeScript

      • 安装webpack相关内容
      • 安装TS相关内容
      • 配置初始化数据
      • 初始化运行展示和目录展示
          • 报错解决(缺失文件配置)
      • 安装前端必备神奇lodash测试一下
      • entry配置
      • index.html模板配置
          • 修改打包出来的index.html的title
          • inject注入
          • chunks 属性
          • 多页面配置
      • Tree Shaking-(摇晃无用代码)
          • sideEffects属性
      • 渐进式网络应用程序PWA
          • PWA
      • Shimming预置全局变量
      • 细粒度Shimming-转换this的指向
      • 全局Exports

安装webpack相关内容

  • npm init -y,自动建立package.json
  • npm install webpack webpack-cli npm install webpack-dev-server html-webpack-plugin -D

安装TS相关内容

  • npm i typescript ts-loader -D

配置初始化数据

const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {mode: 'development',entry: './src/app.ts',module: {rules: [{test: /\.ts$/,use: 'ts-loader',exclude: /node_modules/,},],},resolve: {extensions: ['.ts', '.js'],},output: {filename: 'bundle.js',path: path.resolve(__dirname, 'dist'),},plugins: [new HtmlWebpackPlugin()],
};

初始化运行展示和目录展示

  • npx webpack
    在这里插入图片描述
报错解决(缺失文件配置)
  • npx tsc --init
  • 自动创建tsconfig.json
  • 配置一下:
  • 在这里插入图片描述
    在这里插入图片描述
  • 到此,执行npx webpack 即可打包成功
    在这里插入图片描述

安装前端必备神奇lodash测试一下

  • npm i lodash -D
  • 当你使用相关包,包类型报错的时候
  • 原因:缺少ts 相关类型文件
  • ts相关类型文件搜索查看引用命令 在这里插入图片描述
  • npm install --save-dev @types/lodash
    在这里插入图片描述

entry配置

  • 当入口文件不止一个的时候,想多个文件打在一个里面的时候
    在这里插入图片描述
  • 当想单独打成文件的时候
  • 缺点:这个做法相当于lodash自己打一遍,但ap.ts里有使用会再打一遍,最终main.js体积也会变大
    在这里插入图片描述
  • 抽离一下lodash
  • 目的:使main.js体积变小
    在这里插入图片描述

index.html模板配置

  • 没有配置的时候打包出来的index.html
    在这里插入图片描述
  • 配置一下
  • 新建index.html
    在这里插入图片描述
  • 导入模块
    在这里插入图片描述
修改打包出来的index.html的title
  • 步骤一,将index.html中改为
  • webpack内置的属性获取标题
    在这里插入图片描述
<title><%=htmlWebpackPlugin.options.title %>
</title>
  • 步骤2;
    在这里插入图片描述
  • 成果展示
    在这里插入图片描述
inject注入
chunks 属性
  • 没配置前,默认全部

  • 有几个入口,引用几个
    在这里插入图片描述

  • 配置图
    在这里插入图片描述

  • 配置后,只留下配置的
    在这里插入图片描述

多页面配置
  • 注意点:多页面配置filename属性要有,且不同
  • filename如果配置成:“/sh_pc/index.html”,打出的包会在文件夹sh_pc下
plugins: [new HtmlWebpackPlugin({title: '乞力马扎罗',template: './index.html',inject: 'body', // 可以表示这个注入到哪个层filename: 'index.html',chunks: ['main'], //可以配置打包出来的index.html只能引入哪个publicPath: 'http://lochost:8080/', // 可以配置打包出来的index.html的路径}),new HtmlWebpackPlugin({title: '罗马迪克',template: './index2.html',inject: 'body', // 可以表示这个注入到哪个层filename: 'index2.html',chunks: ['lodash'], //可以配置打包出来的index.html只能引入哪个publicPath: 'http://lochost:8081/', // 可以配置打包出来的index.html的路径}),],
  • 优化后:
const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
module.exports = {mode: 'development',entry: {main: {import: ['./src/app.ts', './src/app2.ts'],dependOn: 'lodash',},lodash: {import: 'lodash',},},module: {rules: [{test: /\.ts$/,use: 'ts-loader',exclude: /node_modules/,},],},resolve: {extensions: ['.ts', '.js'],},plugins: [new HtmlWebpackPlugin({title: '乞力马扎罗',template: './index.html',inject: 'body', // 可以表示这个注入到哪个层filename: 'sh_pc/index.html',chunks: ['main'], //可以配置打包出来的index.html只能引入哪个publicPath: 'http://lochost:8080/', // 可以配置打包出来的index.html的路径}),new HtmlWebpackPlugin({title: '罗马迪克',template: './index2.html',inject: 'body', // 可以表示这个注入到哪个层filename: 'sh_oc/index2.html',chunks: ['lodash'], //可以配置打包出来的index.html只能引入哪个publicPath: 'http://lochost:8081/', // 可以配置打包出来的index.html的路径}),],output: {clean: true,},
};

Tree Shaking-(摇晃无用代码)

  • Tree-shaking的本质是消除无用的js代码

  • 用到啥才会打包啥
    在这里插入图片描述

  • 看一下区别:
    在这里插入图片描述
    在这里插入图片描述

  • 虽然引入了lodash,但未使用,所以打出来的包里面的lodash被摇晃掉了
    在这里插入图片描述

在这里插入图片描述

sideEffects属性
  • 在package.json中进行配置,即匹配到的任何css文件都不进行Tree Shaking

在这里插入图片描述

渐进式网络应用程序PWA

  • 非离线状态运行
  • 借助第三方包
  • npm i http-server -D
  • 配置一下运行脚本
  • npm start
    在这里插入图片描述
    -当他成功启动后,页面展示, 但当你把服务器挂掉,页面就不展示
    在这里插入图片描述
  • 一般来说,启动服务是不会更新包里面的内容,如果你想更新内容
    在这里插入图片描述
PWA
  • 离线状态运行
  • 先安装
  • npm i workbox-webpack-plugin -D
  • 再配置在这里插入图片描述
  • 再运行在这里插入图片描述
  • 页面上监听一下游览器是否支持离线运行
  • 想要清除这个离线状态
  • 访问chrome://serviceworker-internals/上点一下Unrefister即可
console.log('乞力马扎罗');
if ('serviceWorker' in navigator) {window.addEventListener('load', () => {navigator.serviceWorker.register('/service-worker.js').then((registration) => {console.log('service-worker registed');}).catch((error) => {console.log('service-worker registed error');});});
}
  • npm start
    在这里插入图片描述

Shimming预置全局变量

  • 旧代码
    在这里插入图片描述
  • 新项目
  • 本来会报错,但通过预置全局变量配置了就不会
  • 配置完,lodash就是全局的了在这里插入图片描述
  • 这样配置即可在这里插入图片描述

细粒度Shimming-转换this的指向

  • 有些模块的this指向window对象
  • 但实际我们的CommonJS项目中this指向指向的实际位置不是
  • 解决方法:
  • 通过使用imports-loader覆盖this指向
  • 目前问题:
    在这里插入图片描述

在这里插入图片描述

  • 解决步骤一:
  • npm i imports-loader
  • 步骤二:配置
    在这里插入图片描述

全局Exports

  • 第三方模块,你不清楚他是如何导出的
  • 故你想使用,但不想导入,想直接使用里面的方法
  • 步骤一
  • npm i exports-loader -D
  • 步骤二
  • 新建要导入的文件gloabls.js
const file = '公共的';const helpers = {parse() {console.log('方法');},
};
  • 步骤三
  • webpack.config.js里面配置
    在这里插入图片描述
  • 步骤四 页面中使用
    在这里插入图片描述
    在这里插入图片描述
http://www.yayakq.cn/news/887611/

相关文章:

  • 服务好又优惠的网站制作wordpress添加访客统计
  • 青岛建站培训wordpress怎么用Redis
  • 网站建设公司没落服务app开发的公司
  • 深圳的网站建设公司哪家好合肥市住房和城乡建设局网站
  • 网站色哦优化8888如何网站建设网站
  • 济南网站价格合肥快速建站模板
  • 企业网站系统官网网站建设要学
  • 怡康医药网站建设方案做网站 用什么语言
  • 平台网站建设报价百度 特定网站搜索
  • 地方战友网站建设wordpress 设置固定链接
  • 找人做一个网站多少钱电子商务网站建设与管理考试题
  • 网站开发入门书籍推荐一个网站大概多少页面
  • 发不了软文的网站怎么做关键词优化网站备案电话号码
  • 徐州模板自助建站极致cms怎么样
  • 济南网站建设抖音平台漳州市城乡建设局网站
  • 学校微网站模板下载公司装修效果图办公室
  • 做网站时随便弄上去的文章怎么删掉顺义石家庄网站建设
  • 苏州住房和城乡建设厅网站网络运营是什么意思
  • 网站建设免费视屏教程wordpress ses插件
  • 彩票系统网站开发在北京找工作有哪些招聘网站
  • 正规网站建设led网站建设
  • 济南建站公司电话永康网站设计
  • 网站维护中页面网站建设一般需要多少钱
  • 怎样制作图片网站建筑信息平台官网
  • 怎样做钓鱼网站桂林网络设计
  • 做网站页面怎么做做网站排名要懂那些
  • 网站建设 技术住房和城乡建设部网站投诉电话
  • 公众号开发框架吴中seo外链推广工具
  • 做网站需要的公司电子商务网站设计案例
  • 宁波网站建设公司排名wordpress form 生成