vue写日历,
这篇文章主要为大家详细介绍了某视频剪辑软件实现价格日历效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
本文实例为大家分享了某视频剪辑软件实现价格日历效果的具体代码,供大家参考,具体内容如下
1、效果图
2、下载全局安装:国家预防机制安装电子日历
3、在成分下新建文件日历。vue,内容:
模板
div style=width:600px
电子日历
:render-content=renderContent
:data=datedef
:prop=prop
:禁用日期=禁用日期
:effectiveTimeLimit= effectiveTimeLimit
:默认值=默认值
/电子日历
/div
/模板
脚本
从"电子日历"导入电子日历
导入电子日历/分销/vue日历。 CSS
导出默认值{
道具:{
日期定义:{
类型:数组,
默认值:()={
return []
}
},
默认价格:{
类型:字符串,
默认值:()={
返回""
}
},
effectiveTimeLimit: {
类型:字符串,
默认值:()={
返回""
}
},
默认值:{
类型:日期,
默认值:()={
返回新日期()
}
}
},
data () {
const self=this
返回{
属性:日期,//对应日期字段名
禁用日期:日期={
返回(
日期值()新日期()。valueOf() - 1 * 24 * 60 * 60 * 1000
日期值()新日期(self.effectiveTimeLimit).的值()
)
}
}
},
组件:{
电子日历
},
方法:{
//JSX语法
renderContent (h,parmas) {
const self=this
常量循环=数据={
返回(
div class={data.defvalue.value?活动":"}
div{data.defvalue.text}/div
差异
输入输出
值={
数据定义值值内容
?数据定义值值内容
:自我默认价格
}
模糊时打开={事件=
self.handleChange(
事件,
数据定义值
?数据。定义值。值。日期
:self.handleDate(data.defdate)
)
}
已禁用={
数据定义值
?新日期(数据.定义值.值.日期).的值()
新日期()。valueOf() - 1 * 24 * 60 * 60 * 1000
新日期(数据.定义值.值.日期).的值()
新日期(self.effectiveTimeLimit).的值()
:data.defdate.valueOf()
新日期()。valueOf() - 1 * 24 * 60 * 60 * 1000
data.defdate.valueOf()
新日期(self.effectiveTimeLimit).的值()
}
key={
数据定义值
?数据。定义值。值。日期
:self.handleDate(data.defdate)
}
/
/div
/div
)
}
return div style= min-height:60px;{loop(parmas)}/div
},
handleChange(事件,日期){
console.log(事件,日期, dddddd )
const self=this
常数索引=自身。datdef。查找索引(项目={
返回项目日期===日期
})
if (isNaN(event.target.value)) {
自我Message.error(请输入正确的价格)
事件。目标。价值=自我。系统默认值价格
返回
}
如果(事件。目标。值索引===-1){
如果(事件。目标。值===自我。默认价格){
返回
}
self.datedef.push({
日期,
内容:事件.目标.值,
cid:空
})
console.log(self.datedef ,self.datedef)
这个emit(aaa ,self.datedef)
}否则if (event.target.value索引!==-1) {
如果(事件。目标。值===自我。默认价格){
self.datedef.splice(索引,1)
返回
}
const selectItem=self。日期定义[索引]
选择项目。内容=事件。目标。价值
self.datedef.splice(index,1,selectItem)
} else if(!事件。目标。值索引!==-1) {
self.datedef.splice(索引,1)
}否则{
事件。目标。价值=自我。系统默认值价格
}
},
处理日期(日期){
const year=date.getFullYear()
let month=date.getMonth() 1
月=月=10?月:"0"月
let idate=date.getDate()
idate=idate=10?编号日期:" 0"id日期
返回" $ {年}-$ {月}-$ {日期} "
}
}
}
/脚本
样式lang=scss 。El-选择器-面板-日历。El-日期选择器-日历
箱形阴影:无;
}。埃尔-日期-表格-日历运输司司{
边框:1px纯色# aaa
颜色:# fff
保证金:5px
div:第一个孩子{
背景色:# aaa
}
div:n-child(2){
填充:5px
颜色:# 000;ivu-输入包装器{
宽度:80%;
}
}。活动{
边框:1px纯色# 2ab561
div:第一个孩子{
背景色:# 2ab561
}
div:n-child(2){
填充:5px
颜色:# 000;ivu-输入包装器{
宽度:80%;
}
}
}
}
//这段如果放开的话当天之前的所有框置灰
//.埃尔-日期-表格-日历td.disabled div分部{
//border:1px solid # AAA;
//color:# fff;
//margin:5px;
//div:first-child {
//背景色:# aaa
//}
//div:n-child(2){
//填充:5px
//color:# 000;
//.ivu-输入包装器{
//宽度:80%;
//}
//}
//}。埃尔-日期-表格-日历td.available:hover {
颜色:# 000;
}。埃尔-日期-表格-日历td.available.today
颜色:# 000;
字体粗细:正常;
}。日期表日历时间表。当前。可用:不可用(已禁用){
背景色:# fff
}
/风格
4、页面引入注册
脚本
从以下位置导入日历././组件/日历
导出默认值{
组件:{日历}
}
data() {
返回{
effectiveTimeLimit:" ",
规则形式:{
价格: ,
配置价格列表:[]
}
},
规则:{
}
}
}
/脚本
5、html
我是写在对话中的
El-表单-项目标签=价格设置prop=calendarPrice
日历
:datdef=规则形式。配置价格列表
:default-price=ruleForm.price
:effectiveTimeLimit= effectiveTimeLimit
/日历
/El-表单-项目
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。