webpack(六):webpack配置vue

本文介绍Vue.js的组件化开发流程,包括.vue文件的封装处理、el与template的区别,以及如何解决项目打包过程中的常见错误。通过组件化开发,提升代码复用性和维护性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

6.1 引用vue.js
6.2 打包项目:错误信息
6.3 el和template区别
6.4 Vue组件化开发引入
6.5 .vue文件封装处理
6.6 组件引用组件

6.1 引用vue.js

npm install vue –save
注:因为我们后续是在实际项目中也会使用vue的,所以并不是开发时依赖
在这里插入图片描述
接下来就可以使用Vue了
在这里插入图片描述
在这里插入图片描述

6.2 打包项目:错误信息

重新打包,会发现报错:
在这里插入图片描述
这个错误说的是我们使用的是runtime-only版本的Vue
1.runtime-only->代码中,不可以有任何的template
2.runtime-compiler->代码中,可以有template,因为有compiler可以用于编译template
所以我们修改webpack的配置,添加如下内容即可
在这里插入图片描述
重新打包,运行
在这里插入图片描述

6.3 el和template区别

正常运行之后,我们来考虑另外一个问题:
如果我们希望将data中的数据显示在界面中,就必须是修改index.html
如果我们后面自定义了组件,也必须修改index.html来使用组件
但是html模板在之后的开发中,我并不希望手动的来频繁修改,是否可以做到呢?
定义template属性:
在前面的Vue实例中,我们定义了el属性,用于和index.html中的#app进行绑定,让Vue实例之后可以管理它其中的内容
这里,我们可以将div元素中的{{message}}内容删掉,只保留一个基本的id为div的元素
在这里插入图片描述
但是如果我依然希望在其中显示{{message}}的内容,应该怎么处理呢?
我们可以再定义一个template属性,代码如下:
在这里插入图片描述
重新打包运行:
在这里插入图片描述
那么,el和template模板的关系是什么呢?
在我们之前的学习中,我们知道el用于指定Vue要管理的DOM,可以帮助解析其中的指令、事件监听等等。
而如果Vue实例中同时指定了template,那么template模板的内容会替换掉挂载的对应el的模板。
这样做有什么好处呢?
这样做之后我们就不需要在以后的开发中再次操作index.html,只需要在template中写入对应的标签即可。
但是,书写template模块非常麻烦怎么办呢?
没有关系,稍后我们会将template模板中的内容进行抽离。
会分成三部分书写:template、script、style,结构变得非常清晰。

6.4 Vue组件化开发引入

在项目中创建名为vue的文件夹,创建JavaScript文件,取名为app。
在这里插入图片描述
app.js代码内容:
在这里插入图片描述
在main.js导入:
在这里插入图片描述
重新打包运行:效果一样。
现在有一个问题,就是app.js中模板和js没有分离。所以接下来创建如下图所示文件。
在这里插入图片描述
取名App
在这里插入图片描述
在main.js中导入App.vue
在这里插入图片描述
重新打包,发现报错
在这里插入图片描述
需要配置对应的loader

6.5 .vue文件封装处理

步骤一:安装vue-loader(对vue进行加载的)和vue-template-compiler(真正对vue进行编译的)

npm install vue-loader vue-template-compiler --save-dev

步骤二:修改webpack.config.js的配置文件

在这里插入图片描述
重新打包运行,发现报错:
在这里插入图片描述
在package.json中
在这里插入图片描述
改为13版本:
在这里插入图片描述
package.json修改了之后,要重新npm install:根据最新的版本重新安装node_modules
在这里插入图片描述
再重新打包运行:
在这里插入图片描述
接下来就可以组件发开发了!

6.6 组件引用组件

创建Cpn.vue
在这里插入图片描述
Cpn.vue代码内容:
在这里插入图片描述
在App.vue中引用Cpn.vue组件
在这里插入图片描述
重新打包运行:
在这里插入图片描述
如何省略文件的后缀呢?
在这里插入图片描述
是在webpack.config.js中
在这里插入图片描述
设置扩展名省略指定后缀之后,
在这里插入图片描述
重新打包运行:效果一样

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值