当前位置:Gxlcms > JavaScript > 使用webpack+vue2进行项目构建

使用webpack+vue2进行项目构建

时间:2021-07-01 10:21:17 帮助过:12人阅读

本篇文章主要介绍了webpack+vue2构建vue项目骨架的方法,现在分享给大家,也给大家做个参考。

前端项目打包工具webpack与前端开发框架vue,算是现在前后端分离后非常流行的技术了,今天主要讲的是使用webpack和vue2构建一个前后端分离项目的基本骨架。虽然使用vue-cli脚手架可以帮我们搭建好一个项目骨架,但是了解原理我觉得还是很重要的,所以这篇文章主要就写webpack与vue构建一个基础项目。前提是已经安装了nodejs。

整个项目需要通过npm安装的依赖

css : style-loader、css-loader、sass-loader、node-sass

js:babel-core 、babel-loader、babel-preset-es2015

webpack:webpack、webpack-dev-server

vue:vuer 、vue-loade、vue-html-loader、vue-template-compiler

新建一个项目的目录

我们首先需要新建一个目录myApp用来放我们的项目,在终端里面进入这个项目,然后开始初始化项目。

初始化项目

  1. $ npm init

初始化项目的时候,如果没有特别需要,直接按“回车键”就可以。项目初始化完成后,就会生成一个packge.json文件主要存放项目依赖目录和配置项目启动命令。

安装依赖

  1. $ npm i style-loader --D

使用npm安装依赖的时候,我们会在最后加上“--D”,因为加“--D”后会在packge.json里面留上记录。如果我们将项目在其他系统打开时,会发现开发的时候通过npm安装的依赖不能用了,这是因为存在系统兼容性。而如果开发项目的时候安装依赖加上“--D”,项目里面的node_modules就不需要拷贝过去,而打开项目前,我们只需要通过npm安装所有依赖就可以了。

  1. $ npm i

配置webpack.config.js文件

webpack所有的配置都在webpack.config.js文件里面,所以初始化项目后,我们需要新建一个webpack.config.js文件然后配置。由于上次已经专门写过webpack的基本配置,这儿就不重复了,直接贴上我的配置代码:

  1. module.exports = {
  2. entry: './src/main.js',
  3. output:{
  4. path: __dirname + '/dist/',
  5. filename: 'bundle.js'
  6. },
  7. devtool:'source-map',
  8. devServer:{
  9. // 主要改变项目的根目录
  10. contentBase: __dirname + '/dist/',
  11. port:8080,
  12. inline:true
  13. },
  14. module:{
  15. loaders:[
  16. {test:/\.css$/,loader :'style-loader!css-loader'},
  17. {test:/\.js$/, loader:'babel-loader',exclude:/node_modules/},
  18. { test: /\.vue$/, loader: 'vue-loader' }
  19. ]
  20. },
  21. //vue文件想要解析必须要要加上这句才能成功
  22. resolve: { alias: { 'vue': 'vue/dist/vue.js' } }
  23. }

配置package.json

package.json里面需要配置的主要时项目启动命令,一个开发模式的start和打包项目build。

启动项目

  1. $ npm start

打包项目

  1. $ npm run build

整个项目的目录

src:我们开发的源文件都放在这个目录里面

components:用来放所有的组件

styles:存放所有的样式文件

utils:存放所有需要自己写的方法函数

app.vue:所有的vue文件的入口文件

main.js:整个项目的js入口文件

index.html:这个文件可以放在真个项目的根目录myApp里面,也可以放在webpack打包的生成的目录dist里面,如果是放在根目录则webpack.config.js里面的contentBase: __dirname ,如果在dist里面则contentBase: __dirname + '/dist/'。主要改变项目的服务根目录的位置,就是我们localhos:8080打开时浏览器显示的目录。(经过测试放在打包生成的dist目录会好些,主要在开发模式可以实现实时更新。这个可能不太准,后期再测试后进行修改)

index.html文件代码

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <meta http-equiv="X-UA-Compatible" content="ie=edge">
  7. <title>webpack+vue</title>
  8. </head>
  9. <body>
  10. <p id="app"></p>
  11. <script src="./bundle.js"></script>
  12. </body>
  13. </html>

main.js文件代码

  1. //引入vue框架<br>
  2. //import是es6的写法,其实和var Vue = require('vue')是相同的意义<br>import Vue from 'vue';<br>
  3. //引入App.vue文件,这个文件也是vue所有组件的入口,我们的项目就是将这个文件追加到index.html文件里面
  4. import App from './App.vue';
  5. new Vue({
  6. el:'#app',
  7. components: {App},<br>//主要目点就是将App追加到“#app”里面去
  8. render: h => h(App)
  9. })
  10. App.vue文件代码
  11. <template>
  12. <p>Hello VueJS!</p>
  13. </template>
  14. <script>
  15. export default{
  16. name:"app"
  17. }
  18. </script>

到这儿整个项目基本上就完成了基本的结构,在浏览器输入:localhost:8080,就可以看到显示:

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

使用async-validator如何编写Form组件(详细教程)

使用casperjs和resemble.js如何实现像素对比(详细教程)

使用JavaScript如何实现快速排序(详细教程)

以上就是使用webpack+vue2进行项目构建的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行