我這個項目比較老,是用node+vue+iframe寫的,模擬了vue的spa,因為當(dāng)初架子沒考慮好使用并不是正常vue 那樣的模塊化開發(fā),使用了iframe有許多問題,其中之一就是頁面加載的資源太多,所以上級說要使用webpack,建一 個入口文件,把所有的文件通過import引入,打包的時候在終端里面顯示是正常的,但是瀏覽器打開就報錯了,請各位 大神不吝賜教!小弟在此感謝了!
webpack.config.js
var path = require('path');
var webpack = require('webpack');
var htmlWebpackPlugin = require('html-webpack-plugin');
var nodeExternals = require('webpack-node-externals');
var CompressionPlugin = require("compression-webpack-plugin");
var config = {
target: 'node',
externals: [nodeExternals()],
devtool: 'eval-source-map',
entry: './main.js',
output: {
path:__dirname+ '/build',
filename: 'bundle.js',
},
module: {
rules: [
{
test: /\.js$/,
loader: 'babel-loader',
exclude: /node_modules/,
query: {
presets: ['es2015']
}
},
{
test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
}
},
{
test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
// name: utils.assetsPath('media/[name].[hash:7].[ext]')
}
},
{
test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
loader: 'url-loader',
options: {
limit: 10000,
}
},
{
test: /\.css$/,
loader: 'style-loader!css-loader',
exclude:/node_modules/
}
],
},
performance : {
hints : false,
maxEntrypointSize:400000
},
node: {
fs: 'empty'
},
plugins:[
new htmlWebpackPlugin({
filename:'index.html',
}),
new CompressionPlugin({
asset: '[path].gz[query]',
algorithm: 'gzip',
threshold: 10240,
minRatio: 0.8
})
],
resolve: {
extensions: [ '.js', '.css', '.vue'],
modules: [path.join(__dirname,"./public" ),'./node_modules'],
alias: {
'hipchat-notifier': path.join(__dirname, './node_modules/log4js/lib/appenders/hipchat.js'),
'mailgun-js': path.join(__dirname, './node_modules/log4js/lib/appenders/mailgun.js'),
'loggly': path.join(__dirname, './node_modules/log4js/lib/appenders/loggly.js'),
'slack-node': path.join(__dirname, './node_modules/log4js/lib/appenders/slack.js'),
'nodemailer': path.join(__dirname, './node_modules/log4js/lib/appenders/smtp.js'),
'sockjs': path.join(__dirname, './node_modules/webpack-dev-server/client/socket.js'),
'jquery': path.join(__dirname, './public/js/jquery-form.js'),
}
},
devServer: {
port: 9529,
historyApiFallback: true,
stats: 'minimal',
overlay: true,
filename:'bundle.js'
},
}
module.exports = config;
package.json
{
"name": "we",
"version": "1.0.0",
"description": "we",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "webpack-dev-server --content-base /build --inline --hot --open --progress --colors",
"dev": "webpack --config webpack.config.js --progress --colors",
"webpack": "webpack -d",
"build": "webpack -p"
},
"author": "we",
"license": "ISC",
"dependencies": {
"body-parser": "^1.16.1",
"config-lite": "1.5.0",
"connect-flash": "0.1.1",
"cookie-parser": "^1.4.3",
"ejs": "2.5.2",
"excel-export": "^0.5.1",
"express": "4.14.0",
"express-formidable": "1.0.0",
"express-session": "^1.14.2",
"express-winston": "2.0.0",
"fs": "0.0.1-security",
"log4js": "^1.1.1",
"needle": "^2.0.1",
"node-xlsx": "^0.7.4",
"os": "^0.1.1",
"silly-datetime": "^0.1.2",
"url": "^0.11.0",
"winston": "2.2.0"
},
"devDependencies": {
"babel-core": "^6.26.0",
"babel-loader": "^7.1.4",
"babel-preset-env": "^1.6.1",
"babel-preset-es2015": "^6.24.1",
"compression-webpack-plugin": "^1.1.11",
"css-loader": "^0.28.10",
"extract-text-webpack-plugin": "^4.0.0-beta.0",
"file-loader": "^1.1.11",
"gulp": "^3.9.1",
"html-webpack-plugin": "^3.0.6",
"istanbul": "0.4.5",
"mocha": "3.1.2",
"path": "^0.12.7",
"request": "^2.85.0",
"style-loader": "^0.20.3",
"supertest": "2.0.1",
"url-loader": "^1.0.1",
"webpack": "4.1.1",
"webpack-cli": "^2.0.11",
"webpack-dev-server": "^3.1.1",
"webpack-node-externals": "^1.6.0"
}
就是下圖代碼引起的報錯
修改target:'web'
最后再次謝謝大家!
北大青鳥APTECH成立于1999年。依托北京大學(xué)優(yōu)質(zhì)雄厚的教育資源和背景,秉承“教育改變生活”的發(fā)展理念,致力于培養(yǎng)中國IT技能型緊缺人才,是大數(shù)據(jù)專業(yè)的國家
北大青鳥中博軟件學(xué)院創(chuàng)立于2003年,作為華東區(qū)著名互聯(lián)網(wǎng)學(xué)院和江蘇省首批服務(wù)外包人才培訓(xùn)基地,中博成功培育了近30000名軟件工程師走向高薪崗位,合作企業(yè)超4
中公教育集團創(chuàng)建于1999年,經(jīng)過二十年潛心發(fā)展,已由一家北大畢業(yè)生自主創(chuàng)業(yè)的信息技術(shù)與教育服務(wù)機構(gòu),發(fā)展為教育服務(wù)業(yè)的綜合性企業(yè)集團,成為集合面授教學(xué)培訓(xùn)、網(wǎng)
達內(nèi)教育集團成立于2002年,是一家由留學(xué)海歸創(chuàng)辦的高端職業(yè)教育培訓(xùn)機構(gòu),是中國一站式人才培養(yǎng)平臺、一站式人才輸送平臺。2014年4月3日在美國成功上市,融資1
浪潮集團項目經(jīng)理。精通Java與.NET 技術(shù), 熟練的跨平臺面向?qū)ο箝_發(fā)經(jīng)驗,技術(shù)功底深厚。 授課風(fēng)格 授課風(fēng)格清新自然、條理清晰、主次分明、重點難點突出、引人入勝。
曾工作于聯(lián)想擔(dān)任系統(tǒng)開發(fā)工程師,曾在博彥科技股份有限公司擔(dān)任項目經(jīng)理從事移動互聯(lián)網(wǎng)管理及研發(fā)工作,曾創(chuàng)辦藍懿科技有限責(zé)任公司從事總經(jīng)理職務(wù)負責(zé)iOS教學(xué)及管理工作。
精通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)師。