1. SPA
SPA是单页面应用程序(single page application),通俗来讲就是在一个页面开发一个完整网站的功能
优点:
- 不需要跳转页面,局部更新页面内容
- 前端组件化
缺点:
- 首屏加载慢(第一次访问慢,按需加载)
- 开发复杂(所有的功能都在一个页面完成,可使用webpack模块化开发)
- 不利于SEO搜索引擎优化(使用服务端渲染)
2. 前端路由:
- 根据不用的URL标识符渲染不同的组件(不同的网页内容)
- 路由实现原理:
- hash哈希(锚点) 通过hashchange监听URL标识符改变,显示不同的内容
<ul>
<li><a href="#login" rel="external nofollow" >鲁班</a></li>
<li><a href="#home" rel="external nofollow" >提莫</a></li>
<li><a href="#list" rel="external nofollow" >剑姬</a></li>
</ul>
<div id="app"></div>
<script>
// 监听hash值的不用,让页面显示不同的内容
window.onhashchange = function() {
let app = document.getElementById('app');
// 获取hash值
let hash = location.hash.substr(1);
// 根据标识展现不同的内容 局部更新
switch(hash) {
case 'login':
app.innerHTML = '托马斯回旋...';
break;
case 'home':
app.innerHTML = '正在路上...';
break;
case 'list':
app.innerHTML = '华尔兹...';
break;
}
}
</script>
3. 前端模块化
- CommonJS
- 模块导出
- module.exports
- exports
- 模块导入
- require()
- 模块导出
- ES6 Module
- 模块导出
- export
- 模块导入
- import
- 模块导出
4. webpack基础配置
初始化项目
npm init -y
安装依赖包
npm install webpack -D npm install webpack-cli -D
通过webpack命令打包文件: 模块化转换,代码压缩合并
webpack.config.js
const path = require('path');
// 下包并导入插件 npm i html-webpack-plugin -D
const HtmlWebpackPlugin = require('html-webpack-plugin');
// npm i clean-webpack-plugin -D 清除目录中的内容
const { CleanWebpackPlugin } = require('clean-webpack-plugin');
module.exports = {
// 配置打包选项 development开发环境
mode: 'development', // production 生产环境
// 指定入口文件:要打包的文件
entry: './src/js/index.js',
// 指定输出文件:打包之后的文件
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'main.min.js'
},
// 配置资源的加载器 loader
module: {
rules: [
// 配置js的加载器(把ES6转化为ES3/5代码)
{
test: /\.jsx"htmlcode">
"scripts": {
"dev": "npx webpack-dev-server --open"
}
5 .判断如何配置webpack
- 指定源文件加入到构建流程中被webpack控制, 配置entry
- 指定输出文件的位置和名称,配置output
- 自定义解析和转换文件,配置module,通常是配置module.rules里的 Loader。(资源加载器)
- 配置插件通过plugins进行配置
- 寻找依赖模块时,配置resolve
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
暂无“前端路由&webpack基础配置详解”评论...
RTX 5090要首发 性能要翻倍!三星展示GDDR7显存
三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。
首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。
据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。
更新动态
2025年10月25日
2025年10月25日
- 小骆驼-《草原狼2(蓝光CD)》[原抓WAV+CUE]
- 群星《欢迎来到我身边 电影原声专辑》[320K/MP3][105.02MB]
- 群星《欢迎来到我身边 电影原声专辑》[FLAC/分轨][480.9MB]
- 雷婷《梦里蓝天HQⅡ》 2023头版限量编号低速原抓[WAV+CUE][463M]
- 群星《2024好听新歌42》AI调整音效【WAV分轨】
- 王思雨-《思念陪着鸿雁飞》WAV
- 王思雨《喜马拉雅HQ》头版限量编号[WAV+CUE]
- 李健《无时无刻》[WAV+CUE][590M]
- 陈奕迅《酝酿》[WAV分轨][502M]
- 卓依婷《化蝶》2CD[WAV+CUE][1.1G]
- 群星《吉他王(黑胶CD)》[WAV+CUE]
- 齐秦《穿乐(穿越)》[WAV+CUE]
- 发烧珍品《数位CD音响测试-动向效果(九)》【WAV+CUE】
- 邝美云《邝美云精装歌集》[DSF][1.6G]
- 吕方《爱一回伤一回》[WAV+CUE][454M]