Vue笔记(8)

2022-09-20 20:49:53 浏览数 (1)

学习内容

⊙ 配置Vue

⊙ el和template的区别

⊙ 认识plugin

⊙ 搭建本地服务器

⊙ 配置文件的分离

啊,今天运行昨天的程序结果疯狂报错,气死我了

配置Vue

后续项目中,我们会使用Vuejs进行开发,而且会以特殊的文件来组织Vue的组件

所以,下面我们来学习一下如何在我们的webpack环境中集成VueJS

现在我们希望在项目中使用Vue,那么必然需要对其有依赖,所以需要先进行安装

注意: 因为我们后续是在实际项目中也会使用Vue的,所以并不是开发时依赖,所以不用加-dev

npm i vue --save

现在开始使用Vue

在入口文件main.js中写我们的Vue实例,因为现在用的是npm而不是cdn引入,所以需要import 一下

在index.html里写一个div

run以后运行会报错

原因有点难解释, 直接说解决办法吧

webpack.config.js中加上这几条代码即可

现在就可以了

el和template

我们来考虑另外一个问题:

由于不想频繁的更改index.html的内容,所以将里面的内容删除

index.html

写在main里面的template里

main.js

然后再运行的时候,vue会自动帮我们把template里面的内容放到index.html里面

index.html

试着运行一下:

就是说同时有el和template的话,template会将el的内容替换掉

所以现在又要抽离一下了

我们在Vue实例中注册子组件App,子组件里面包含着html的一些结构,但是Vue实例中的template会将App里面的内容直接替换掉index.html中<div id='app'></div>的标签

嗯...就是以前的<App>会放在↓

现在放到了↓

另外<App/>就是<App></App>

接下来还要继续抽取

在src文件夹下面创建一个vue文件夹,里面创建一个app.js

导出这一块代码

main.js中引用:

run一下就能运行了,效果就不展示了,因为还可以继续抽到vue里面

现在终于到了使用.vue文件的时候

还是在vue文件夹里面,创建一个App.vue文件

下载一个叫'vetur'的插件

在.vue文件中输入vue就会出来模板

这个时候是会报错的,提示我们需要vue-loader

npm install vue-loader@15.4.2 --save-dev

npm install vue-template-compiler@2.5.21 --save-dev

然后还是进行配置

现在重新run一下看看效果

还可以像之前一样在组件里面注册子组件

创建Cpn.vue文件

App.vue

run一下:

不得不感叹真的好牛逼啊...

plugin

我们来学习一个最简单的插件: BannerPlugin,为打包的文件添加版权声明,属于webpack自带的插件

webpack.config.js

run以后来看看我们的bundle.js

安装插件:

npm install html-webpack-plugin@3.2.0 --save-dev

就是说在我们run了以后,会在dist文件夹下也创建一个index.html文件(为了后续的发布,所以要放在这个文件夹下),使用这个插件就能帮我们自动创建

使用:

注意,这一条可以删除,因为后面会自动创建

webpack.config.js

run一下看看效果

已经生成了

dist文件夹下的index.html

在项目发布之前,我们必然要对js等文件进行压缩处理,需要使用uglifyjs-webpack-plugin

安装:

npm install uglifyjs-webpack-plugin@1.1.1 --save-dev

接下来就是配置:

webpack.config.js

run以后的结果:

所以我们之前的版权声明啥的也没用了,因为丑化时会将我们的注释给去掉,这两个只能用一个

搭建本地服务器

我们每次修改完代码以后想要看到效果,都要重新run一次,非常非常的麻烦

webpack提供了一个可选的本地开发服务区,这个本地服务器基于node.js搭建,内部使用express,可以实现我们想要的让浏览器自动刷新显示我们修改后的结果

不过它是一个单独的模块,在webpack中使用要先安装

npm install --save-dev webpack-dev-server@2.9.1

但是现在还不能运行,因为终端中运行是在全局的环境下的,所以现在要去配置一下

package.json

现在可以run dev了

效果:

加上open可以自动打开浏览器

配置文件的分离

当我们在开发时,其实有一些配置是不需要的,比如:

丑化和自动在dist下生成index.html,所以我们现在要对这些配置做一个抽离,把开发和发布时的配置分离

创建文件夹和文件

base就是放一些不管是开发时还是生产时都需要的配置:

base.config.js

dev.config.js

开发时配置

这个就是搭建的本地服务器,做测试用的,所以只在开发时有用

prod.config.js

生产时配置,最终编译时的配置

那我们开发时就需要这两个文件

生产时需要的文件

所以现在要将他们合并起来

安装插件:

npm i webpack-merge@4.1.5 --save-dev

dev.config.js

漏写导入了!!!被自己气死!

prod.config.js

现在可以把原来的webpack.config.js删除掉.但是这个时候运行肯定会报错,因为找不到叫webpack.config.js的配置文件了

package.json

嗯但是这时又有问题了,就是我们打包出来的文件[跑到了build下面的dist文件夹里

这是因为我们在base文件里面写的路径的问题

我们要将后面改成:../dist

然后就OK了

0 人点赞