如何在 angular summernote 中插入自定义按钮

How to insert a custom button in angular summernote

根据 documentation,你应该这样做:

<div ng-controller="OptCtrl">
  <summernote config="options"></summernote>
</div>

var HelloButton = function (context) {
  var ui = $.summernote.ui;

  // create button
  var button = ui.button({
    contents: '<i class="fa fa-child"/> Hello',
    tooltip: 'hello',
    click: function () {
      // invoke insertText method with 'hello' on editor module.
      context.invoke('editor.insertText', 'hello');
    }
  });

  return button.render();   // return button as jquery object
}

angular.module('summernoteDemo', ['summernote'])
    .controller('OptCtrl', function($scope) {
      $scope.options = {
        toolbar: [
          ['mybutton', ['hello']]
        ],
        buttons: {
          hello: HelloButton
        }
      };
    });

我试过这个例子。它很好地显示了问候按钮,但是当我点击它时出现错误:

Uncaught TypeError: Cannot read property 'invoke' of undefined

这一行context.invoke('editor.insertText', 'hello');上下文 未定义..)

你知道如何解决吗?

我正在使用:

"summernote": "^0.7.3",
"angular-summernote": "^0.7.1"

谢谢

通过将 summernoteangular-summernote 更新到最新版本解决了问题。