2017-02-22 26 views
1

Я пытаюсь использовать OOjs UI/Windows/Message Dialogs, чтобы запросить предупреждение пользователя. Я использовал фрагмент кода от https://www.mediawiki.org/wiki/OOjs_UI/Windows/Message_Dialogs, чтобы открыть диалоговое окно.TypeError: OO.ui.MessageDialog не является конструктором при использовании OOjs UI/Windows/Message Dialogs

Но когда я использую var messageDialog = new OO.ui.MessageDialog();эта ошибка возникает - TypeError: OO.ui.MessageDialog is not a constructor.

В чем может быть проблема?

код выглядит следующим образом:

(function ($) { 
    $('#movepage').on('submit', function(event){ 
     var messageDialog = new OO.ui.MessageDialog(); 

     var windowManager = new OO.ui.WindowManager(); 
     $('body').append(windowManager.$element); 

     windowManager.addWindows([ messageDialog ]); 

     windowManager.openWindow(messageDialog, { 
      title: 'Storage limit reached', 
      message: 'You are out of disk space', 
      actions: [ 
       { label: 'Cancel', action: 'cancel' }, 
       { label: 'Move page', action: 'proceed' } 
      ] 
     }); 
    }); 
}(jQuery)); 

ответ

1

я разобрался.

Вы должны добавить зависимости 'oojs-ui-core', 'oojs-ui-windows' в Resources.php.

например:

Если вы добавляете диалог сообщение в mediawiki.special.movePage.js

'mediawiki.special.movePage' => [ 
    'scripts' => 'resources/src/mediawiki.special/mediawiki.special.movePage.js', 
    'dependencies' => [ 
     'jquery.byteLimit', 
     'mediawiki.widgets', 
     'oojs-ui-core', 
     'oojs-ui-windows' 
    ], 
], 

 Смежные вопросы

  • Нет связанных вопросов^_^