目录
项目源代码:
一、vue-devTools安装
Vue.js devtools是基于google chrome浏览器的一款调试vue.js应用的开发者浏览器扩展,可以在浏览器
开发者工具下调试代码,安装方式:
- 在线安装(需要翻墙):chrome商店直接搜索安装
- 离线安装:
将已经下载解压的vue.js.devTools插件目录手动加载到chrome浏览器的扩展程序中
chrome商店:https://chrome.google.com/webstore/category/extensions
~~~注:这里可以找到我博客中资源,自行下载,内附安装教程
安装插件:
![](https://file.jishuzhan.net/article/1704711635211390978/b582bb8f9212409c8883221ab500694c.png)
![](https://file.jishuzhan.net/article/1704711635211390978/c7572cf424a24750bbd376be7a37acfe.png)
扩展程序中出现如下,则安装成功:
![](https://file.jishuzhan.net/article/1704711635211390978/1f27626a246349e48ca6b1cbf61e50b0.png)
二、案例功能实现
1、新建项目(ui创建)
vue创建项目两种方式:
- create+项目名
- vue ui
第一种create创建,参考VS code创建Vue项目 方法1:create+项目_Siobhan. 明鑫的博客-CSDN博客
接下来我们使用第二种创建 :
1.打开vs code,在终端命令窗口输入:vue ui。如下:
![](https://file.jishuzhan.net/article/1704711635211390978/77e328bb7a7f44f0bd1b5936d0ddb55d.png)
2.此时会自动跳转到打开【vue项目仪表盘】
![](https://file.jishuzhan.net/article/1704711635211390978/8378632dac734c83bc9882318a1cc240.png)
选择【vue项目管理器】
![](https://file.jishuzhan.net/article/1704711635211390978/b46ead509bb74f34bcaa457980513d28.png)
![](https://file.jishuzhan.net/article/1704711635211390978/f18ca98993b24ed092258f84edf6fec9.png)
![](https://file.jishuzhan.net/article/1704711635211390978/ee5e9ed612a44bb1b7952242811cf4fe.png)
![](https://file.jishuzhan.net/article/1704711635211390978/fae4ca79bf0844af9dc035dcd6d54576.png)
稍等片刻,就ok了!!!
![](https://file.jishuzhan.net/article/1704711635211390978/30e6fed5437e4c6bb5118f2f920b2563.png)
此时创建完成~~~~~
2、cnpm导入项目依赖库
为了使用前台布局,我们此时需要导入bootstrap,方便快速编写案例的前台界面布局
cnpm i bootstrap -D
![](https://file.jishuzhan.net/article/1704711635211390978/43070e1a8fa34b40a957a5c0e47fa90e.png)
*:凡是在npm 安装依赖的时候出现 上图所示的警告,表示当前这个库依赖的库没有安装上,只要将要求的依赖库安装上即可。
cnpm i @popperjs/core@^2.11.5 -D
缺少什么版本的下载什么
![](https://file.jishuzhan.net/article/1704711635211390978/cdbd76be109643e59973c894ff6ad9be.png)
![](https://file.jishuzhan.net/article/1704711635211390978/70c8d017762a46cbab82c26a7464038a.png)
cnpm常用安装命令的区别:
- npm i module_name -S = > npm install module_name --save 写入到 dependencies 对象
- npm i module_name -D => npm install module_name --save-dev 写入devDependencies 对象
- npm i module_name -g 全局安装
- npm i module_name 安装到当前目录的nodu_modules,但不会写入到dependencies和devDependencies中,在项目开发时,不建议使用
注意:vscode安装bootstrap插件,在编写bootstrap组件元素时可以给出智能提示, 提高效率
3、删除不需要的代码结构:
删除assets、components、APP.vue
![](https://file.jishuzhan.net/article/1704711635211390978/91ec82c99ea341c482e5c89dcdc25103.png)
删完结构如下:
![](https://file.jishuzhan.net/article/1704711635211390978/9d68b69b6ddf463f9075eb7f772f638a.png)
4、修改代码结构
![](https://file.jishuzhan.net/article/1704711635211390978/2ae0ea54e0a04bc1a57feaf54f9a7e40.png)
修改vue.config.js配置,使得能够使用我们的方式导入vue库
![](https://file.jishuzhan.net/article/1704711635211390978/0d854aea11b44a5f9986df135bbbd156.png)
5、添加汽车品牌
html中输入bs3-table即可快速创建bootstrap表格元素 ,输入bs3 panel 可以快速创建简单面板: 提供输入汽车品牌和名称,点击添加数据。
在这里可能大家会出现输入【bs3-table】不自动弹出提示,接下来我们需要安装一些插件:
插件安装
打开vscode,选择扩展功能(ctrl+shit+x),搜索bootstrap 3 snippets 和bootstrap 4 snippets,安装后,重新加载。
![](https://file.jishuzhan.net/article/1704711635211390978/f660eec135af44f9a14a582aa6077061.png)
bootstrap的提示功能
在html文件中,输入bs3-* 可以弹出提示,而且是以组件的形式弹出。
![](https://file.jishuzhan.net/article/1704711635211390978/5c26afdc9a58485498de06ac0be5f4cf.png)
![](https://file.jishuzhan.net/article/1704711635211390978/9b141f54cb2b4b4bb79a86b67b88b0d5.png)
注意,修改package.json 中的调试方法。修改如下:(当我们输入启动命令时自动打开页面)
同时注意修改rules:(规避vm is not used )
index.html如下:
<!DOCTYPE html>
<html lang="">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title><%= htmlWebpackPlugin.options.title %></title>
</head>
<body>
<div id="app">
<table class="table table-hover">
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>Ctime</th>
<th>Operation</th>
</tr>
</thead>
<tbody>
<tr v-for="item in brandlist" :key="item.id">
<td>{{item.id}}</td>
<td>{{item.name}}</td>
<td>{{item.ctime}}</td>
<td><a href="" @click.prevent="del(item.id)">删除</a></td>
</tr>
</tbody>
</table>
</div>
</body>
</html>
main.js如下:
import Vue from "vue"
var vm = new Vue({
el:"#app",
data:{
brandlist: [
{id:1,name:"奔驰",ctime:new Date()},
{id:2,name:"奥迪",ctime:new Date()}
]
},
methods:{
del(id){
alert(id);
}
}
})
此时使用命令:npm run dev
![](https://file.jishuzhan.net/article/1704711635211390978/922e3cb6518a4afcb5434407fd229d4d.png)
这里我们发现数据有了却没有样式,因此需要引入bootstrap样式。
添加bootstrap样式
import Bootstrap from "bootstrap/dist/css/bootstrap.min.css"
![](https://file.jishuzhan.net/article/1704711635211390978/94c6b03c54964f6eb8d8deb4fde95d89.png)
最后我们在来补充代码,实现【添加】操作:
![](https://file.jishuzhan.net/article/1704711635211390978/99f360e7c6e04a11b5b074f48fbe20bb.png)
![](https://file.jishuzhan.net/article/1704711635211390978/d964707863b2420c8984d48a21cae72e.png)
![](https://file.jishuzhan.net/article/1704711635211390978/5ce03529de2c4e9c8b1b34cfc7757c00.png)
此时添加功能实现。
6、删除汽车品牌
table的tr行中,最后一列td, a 标签点击删除,v-on:click事件绑定,删除对应的记录
- a链接需要阻止默认事件:事件修饰符
- 对应methods事件处理方法,使用some循环数组,删除元素
![](https://file.jishuzhan.net/article/1704711635211390978/95478024978c4de2b3624ee520c4c807.png)
7、查询汽车品牌(过滤)
v-for 循环每一行数据的时候,不再直接 `item in list`,而是 `in` 一个过滤的methods 方法,methods方法绑定属性keywords,其内部再用for循环过滤符合条件数据,返回新的数组
![](https://file.jishuzhan.net/article/1704711635211390978/a1d4d81d46e0410bb52238e1b3631bf9.png)
![](https://file.jishuzhan.net/article/1704711635211390978/415fad615a214e96b5143e13cf700f3d.png)
![](https://file.jishuzhan.net/article/1704711635211390978/dae7de7e26e04d04b9f20d61b8c5b801.png)
*: 特别需要注意的是:search函数一定要用return返回结果
效果展示:
首先添加两个相同关键字的信息。
![](https://file.jishuzhan.net/article/1704711635211390978/a9969701a2464bd697bb3fae005764ab.png)
当我们输入关键字,则会自动弹出
当我们输入内容不存在品牌列表中,则不会有内容出现:
![](https://file.jishuzhan.net/article/1704711635211390978/6bb57476c2e544cb8027f1c24f2b042c.png)