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

时间:2016-06-01 08:38:06

标签: javascript jquery angularjs 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
        }
      };
    });

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

Uncaught TypeError: Cannot read property 'invoke' of undefined

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

您对如何解决它有任何想法吗?

我正在使用:

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

由于

1 个答案:

答案 0 :(得分:0)

通过将 summernote angular-summernote 更新到上一版本来解决问题。