国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁技術(shù)文章
文章詳情頁

javascript - angularjs 想寫一個簡單的toast,如何實現(xiàn)?

瀏覽:137日期:2023-05-06 09:14:42

問題描述

思路是使用directive來實現(xiàn),但卡在不知道怎么暴露API給controller

我想彈出toast的時候在controller里調(diào)用API xxx.showToast,但不知道怎么才能取到這個接口,directive也不能作為依賴注入,卡在這里了,望指教。

問題解答

回答1:

你directive接過去寫就可以直接使用了

css代碼

.toast-box{

position:absolute;top:45%;z-index:99;max-height:250px;overflow-y:auto;margin:0 auto;float:left;left:50px;right:50px;text-align:center;

}.toast-top{

top:0;

}.toast-bottom{

top:auto;bottom:0;

}.toast-box .toast-item{

display:inline-block;margin-top:5px;padding:0 20px;max-width:100%;height: 40px;line-height: 40px;color:#fff;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;border-radius:6px;font-size: 14px;background-color: rgba(0, 0, 0, 0.8);

}.toast-box .toast-item.toast-success{

background-color: rgba(40,165,76, 0.8);

}.toast-box .toast-item.toast-error{

background-color: rgba(217,83,79, 0.8);

}.toast-box .toast-item.toast-warn{

background-color: rgba(240,173,78, 0.8);

}.toast-box .toast-item.toast-info{

background-color: rgba(3,155,229, 0.8);

}

directive代碼

angular.module(’app’).directive(’toast’, function() {

return { restrict: ’E’, require: ’ngModel’, scope: {ngModel: ’=’ }, link: function (scope, element, attr, ctrl) {/* * Read before you modify * this is a Object Sample : {text:'prompt content',type:'prompt style',timeout:'display time',max:'Display maximum number'} * If you need to add attributes! Please update the Object Sample*/var objSample = { text: 'prompt content', type: 4, timeout: 3000, max: 3 };var position = attr.position||’center’;$(’.toast-’+position).remove();var box = $(’<p class='toast-box toast-’ + position + ’'></p>’).appendTo(’body’);scope.$watch(’ngModel’, function (newValue) { if (!newValue) return;var value;if (angular.isString(newValue)) { value = { text: newValue };} else { value = angular.copy(newValue);}var timeout = isNaN(value.timeout) ? objSample.timeout : value.timeout;if (value.text != undefined && value.text != '') { var isMax = box.find('p').length >= (value.max || objSample.max) if (isMax) return; //var item = $(’<p class='toast-item toast-’ + getToastClass(value.type) + ’ animated fadeInDown'>’ + value.text + ’</p><br/>’).appendTo(box); var item = $(’<p class='toast-item toast-’ + getToastClass(value.type) + ’'>’ + value.text + ’</p><br/>’).appendTo(box); setTimeout(function () {//item.addClass(’fadeOutUp’);setTimeout(function () { item.remove();}, 500); }, timeout);}}); }};

});

function getToastClass(type) {

var toast_class;switch (type){ case 1:toast_class = 'success';break; case 2:toast_class = 'error';break; case 3:toast_class = 'warn';break; case 4:toast_class = 'info';break; default:toast_class = 'undefined';break;}return toast_class

}

html使用

<toast ng-model='toast' position='center'></toast>

控制器使用

$scope.toast = { text: 'Hellow', type: 1, timeout: 1000,max:2 };

回答2:

可以使用AngularJS-Toasterhttps://github.com/jirikavi/A...

回答3:

樓上說的angularjs-toaster挺好用的,可以用用?;蛘邔憘€service,通過di來使用。

回答4:

之前用過sweet alert,感覺也還行。http://t4t5.github.io/sweetal...

標(biāo)簽: JavaScript
相關(guān)文章:
主站蜘蛛池模板: 韩国一级毛片视频 | 欧美日韩另类综合 | 国产精品综合一区二区三区 | 中文国产成人精品久久一区 | 欧美三级成人观看 | 日韩不卡在线 | 久国产精品视频 | 国产成人精品无缓存在线播放 | 自拍视频在线观看视频精品 | 亚洲成av人片在线观看无码 | 特级毛片aaaa级毛片免费 | 国产欧美日本亚洲精品五区 | 欧美成人h精品网站 | 国产午夜不卡在线观看视频666 | 99草精品视频 | 91久久国产口精品久久久久 | 久艹在线观看 | 理论片中文字幕 | 一区二区三区不卡视频 | 看a网站 | 成人a毛片高清视频 | 岛国大片在线播放免费 | 国产成人精品无缓存在线播放 | 国产亚洲人成网站在线观看 | 狠狠狠狠狠 | 天堂mv亚洲mv在线播放9蜜 | 欧美成人精品不卡视频在线观看 | 久草手机视频在线观看 | 久久99精品久久久久久秒播 | 手机看片日韩国产 | 一级全免费视频播放 | 成 人 黄 色 激 情视频网站 | 国产区精品一区二区不卡中文 | 深夜福利国产福利视频 | 欧美亚洲日本在线 | 模特精品一区二区三区 | 国产成人免费视频精品一区二区 | 久久一级黄色片 | 欧美亚洲视频在线观看 | 欧美成人精品高清在线观看 | 欧美三级在线 |