基于vue cli simple与ElementUI的TODOS案例 - skylfx/vue-simple-todos GitHub Wiki
案例以教程的一个vue项目作为基础进行改造,包括通过使用ElementUI进行页面布局改造,使用了其中的tab、按钮、table、提示等组件。 另外调整使用了vue-moment,可以不用自己写日期的转换过滤器。
(1)安装配置
1.安装vuecli后,cd到程序目录初始化simple模版
npm install -g vue-cli
vue init simple vue-simple-todos
2.工程目录下安装ElementUI
npm i element-ui -S
3.安装vue-moment日期时间转换js
npm install vue-moment
4.安装url-loader(simple好像默认没这个加载器,但是elui又必须)
webpack.config.js的 rules部分增加如下()
,
{
test: /\.(png|jpg|jpeg|gif|eot|ttf|woff|woff2|svg|svgz)(\?.+)?$/,
use: [{
loader: 'url-loader',
options: {
limit: 10000
}
}]
}
(2)实现效果如下
UL-CSS效果,其中使用了很多css效果,css由scss编写的。checkbox、删除按钮使用的是svg图标,算是个特色
、
ElementUI效果,整个app.vue的div使用其进行布局,行是flex布局,可以自动居中,并且是响应式,设置md sg的区别。
这里使用的工具是vscode,特别好的工具。
(3)分享
1、created()钩子函数,进行了data数据的初始化,如果有本地数据取本地数据,没有默认push了几条数据。
2、ElementUI的el-table-column百分比宽度写法如 min-width ="50%"
3、获取ISO时间
let myDate = new Date();
this.rowdate = myDate.toISOString();
4、删除数组型的json的单条数据。
传入的单条记录,使用json查询结果再赋值实现
delItem (todo) {
this.todos = this.todos.filter((x) => x !== todo)
}
传入的index.使用splice直接删除指定index的数据
handleDelete(index, row) {
this.todos.splice(index,1);
}