Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 多材质design lite snackbar上的计时错误_Javascript_Jquery_Material Design_Material Design Lite - Fatal编程技术网

Javascript 多材质design lite snackbar上的计时错误

Javascript 多材质design lite snackbar上的计时错误,javascript,jquery,material-design,material-design-lite,Javascript,Jquery,Material Design,Material Design Lite,例如,我处理成功完成Symfony实体更新时出现的通知 我现在所做的是(+jsFiddle:): var messagesTypes={ “通知”:[“这是绿色通知”], “错误”:[“这是一个红色错误”], “警告”:[“这是黄色警告”], “信息”:[“这是一条蓝色信息”] }; var colorType={ “信息”:{ “类别”:“mdl颜色——蓝色-400”, “图标”:“完成” }, “错误”:{ “类别”:“mdl颜色——红色-400”, “图标”:“错误” }, “警告”:{

例如,我处理成功完成Symfony实体更新时出现的通知

我现在所做的是(+jsFiddle:):

var messagesTypes={
“通知”:[“这是绿色通知”],
“错误”:[“这是一个红色错误”],
“警告”:[“这是黄色警告”],
“信息”:[“这是一条蓝色信息”]
};
var colorType={
“信息”:{
“类别”:“mdl颜色——蓝色-400”,
“图标”:“完成”
},
“错误”:{
“类别”:“mdl颜色——红色-400”,
“图标”:“错误”
},
“警告”:{
“类别”:“mdl颜色——琥珀色-400”,
“图标”:“警告”
},
“通知”:{
“类别”:“mdl颜色——绿色-400”,
“图标”:“完成”
}
};
(功能(){
"严格使用",;
var snackbarContainer=document.querySelector(“#snackbar”);
var超时=2000;
var actionText='Ok';
var handler=函数(事件){};
//elements.forEach(element=>{})correcpondáfor(elements中的var元素)
//信息类型是一个相对应的对象
Object.keys(messagesTypes).forEach(infoType=>{
//小吃店经理的定义
var objTest={};
对象测试={
类:colorType[infoType]。类,
图标:颜色类型[infoType]。图标,
message:messagesTypes[infoType].toString(),
类型:infoType,
超时:超时,
actionHandler:函数(事件){},
actionText:actionText
};
//重新培训现有课程
//这是一份班级名单,上面的图案和学校的颜色很相配
var re=new RegExp(/(^ |\s)mdl颜色--\s+/,“gi”);
for(var i=0,len=snackbarContainer.classList.length;i

snackbar组件有一个内部队列系统来处理在一行中显示多条消息。您的代码在逻辑上反映了您看到的计时结果。您的代码正在删除/添加类,然后将消息推送到队列上。但是,在这些消息完成显示之前,它将进入下一条消息。将消息抛出到内部队列中,然后在代码中处理下一个消息。它会再次修改类,等等


这里要做的最好的事情是编写自己的对象来处理队列,并抽象出这个着色逻辑。例如,通过这种方式调用notifierRobj.show('message','error')
,它将执行自己的队列系统,并在消息之间为给定消息指示符级别的snackbar应用正确的类。

谢谢!这就是我所做的,你怎么看?