接手了一個小項目,想著就不用vue了,自己用webpack搭起來了小項目。
剛開始頁面量不多我也沒做過多考慮,后來頁面變多了,明顯得有了一級路由和二級路由的需求。
因為平時都用vue,如何實現(xiàn)二級路由實在不清楚。
求教各位前輩如何用js簡單得實現(xiàn)二級路由。
const htmlWebpackPlugin = require("html-webpack-plugin")
const extractTextWebpackPlugin = require("extract-text-webpack-plugin")
const path = require('path')
// 自己項目要用到的模板名
const pages = [
{name: 'index'},
{name: 'collections'},
{name: 'projects'},
{name: 'page4'},
{name: 'page5'},
{name: 'page6'},
{name: 'page7'},
{name: 'page8'},
{name: 'page9'},
{name: 'page10'},
{name: 'page11'}
]
// 配置webpack入口
const entry = path.join(__dirname, "/src/main.js")
// 配置webpack打包文件位置
const output = {
path: path.join(__dirname, "/public"),
filename: "[name].js"
}
// 配置服務(wù)器
const devServer = {
contentBase: path.join(__dirname, "/public"),
historyApiFallback: true,
inline: true
}
const _module = {
rules: [
{
test: /\.html$/,
use: {
loader: "html-loader"
}
},
{
test: /(\.jsx|\.js)$/,
exclude: /node_modules/,
use: {
loader: "babel-loader"
},
},
{
test: /(\.jpg|\.png|\.gif|.jpeg)$/,
use: [
{
loader: "url-loader",
options: {
limit: 12000,
outputPath: 'images',
name: '[name].[hash].[ext]'
}
}
]
},
{
test: /\.scss$/,
use: extractTextWebpackPlugin.extract({
fallback: 'style-loader',
use: [
{
loader: "css-loader"
},
{
loader: "sass-loader"
}
]
})
},
{
test: /\.(otf)|(woff)|(eot)|(ttf)$/,
use: [
{
loader: "url-loader",
options: {
limit: 100000,
name: "[hash:8].[name].[ext]",
outputPath: 'images'
}
}
]
}
]
}
// 定義插件
const plugins = pages.map(({name}) => new htmlWebpackPlugin({
filename: path.join(__dirname, `/public/${name}.html`),
template: path.join(__dirname, `/src/template/${name}.temp.html`)
}))
plugins.push(new extractTextWebpackPlugin("styles.css"))
module.exports = {
entry,
output,
devServer,
module: _module,
plugins
}
webpack打包出來的資源目錄是這樣的
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
達(dá)內(nèi)教育集團(tuán)成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機(jī)構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
北大課工場是北京大學(xué)校辦產(chǎn)業(yè)為響應(yīng)國家深化產(chǎn)教融合/校企合作的政策,積極推進(jìn)“中國制造2025”,實現(xiàn)中華民族偉大復(fù)興的升級產(chǎn)業(yè)鏈。利用北京大學(xué)優(yōu)質(zhì)教育資源及背
博為峰,中國職業(yè)人才培訓(xùn)領(lǐng)域的先行者
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍(lán)懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負(fù)責(zé)iOS教學(xué)及管理工作。
浪潮集團(tuán)項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點(diǎn)難點(diǎn)突出、引人入勝。
精通HTML5和CSS3;Javascript及主流js庫,具有快速界面開發(fā)的能力,對瀏覽器兼容性、前端性能優(yōu)化等有深入理解。精通網(wǎng)頁制作和網(wǎng)頁游戲開發(fā)。
具有10 年的Java 企業(yè)應(yīng)用開發(fā)經(jīng)驗。曾經(jīng)歷任德國Software AG 技術(shù)顧問,美國Dachieve 系統(tǒng)架構(gòu)師,美國AngelEngineers Inc. 系統(tǒng)架構(gòu)師。