簡體   English   中英

angular-ui-router#1.0.11 fire jarvis.widget.js警告“看來您使用的是類而不是ID,請不要這樣做!”

[英]angular-ui-router#1.0.11 fire jarvis.widget.js warns “It looks like your using a class instead of an ID, dont do that!”

我將SmartAdmin用於angular,最近我將Angular從1.4.12更新到angular v1.6.6,之后我發現當我在使用JarvisWidget的狀態之間進行切換時,這是JarvisWidgets的JavaScript庫(更具體地說,是319-325行)未壓縮的jarvis.widget.js)

/**
  * Force users to use an id(it’s needed for the local storage).
  **/
  if (!$(‘#’ + self.objId).length) {
    alert(‘It looks like your using a class instead of an ID, dont do that!’);
  }

每次打開頁面時都會開始發出警報。 在不修改JarvisWidget庫的這一部分的情況下,如何避免在沒有JarvisWidgets的頁面上出現此警報? 為什么在我的情況下觸發此警報?

在適應新版本的angular-ui-router#1.0.11之前,臨時解決方案恢復為angular-ui-router#0.3.2,然后替換以下代碼:

// link function in directive in jarvisWidget.js

link: function(scope, element, attributes) {
  if(element.data('widget-color'))
    element.addClass('jarviswidget-color-' + element.data('widget-color'));

  element.find('.widget-body').prepend('<div class="jarviswidget-editbox"><input class="form-control" type="text"></div>');

  element.addClass('jarviswidget jarviswidget-sortable');
  $rootScope.$emit('jarvisWidgetAdded', {widget: element, id: attributes.id });
}

// Body of the jarvisWidgetAdded listener function in widgetGrid.js:

var widget = widgetPackage.widget;
var widgetId = widgetPackage.id;
if (widgetIds.indexOf(widgetId) == -1) {
  widgetIds.push(widgetId);
  $timeout(function () {
    setupWidgets(element, widgetIds)
  }, 100);
}

請編寫其他解決方案!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM