尝试在redactor中使用插件时出错yii2

时间:2017-08-30 08:55:45

标签: yii2 redactor

我尝试创建示例插件并收到此错误:

Uncaught ReferenceError: RedactorPlugins is not defined

这是我的插件代码:

<?php
    $script = <<< JS

   (function($)
    {
        $.Redactor.prototype.advanced = function()
        {
            return {
                init: function ()
                {
                    var button = this.button.add('advanced', 'Advanced');
                    this.button.addCallback(button, this.advanced.test);
                },
                test: function(buttonName)
                {
                    alert(buttonName);
                }
            };
        };
    })(jQuery);

JS;
$this->registerJs($script);
?>

我的高级插件是在redactor.js之后加载的,我应该修改什么才能让Redactor接受插件?

提前致谢!

1 个答案:

答案 0 :(得分:0)

如果您通过浏览器查看HTML代码,我确信JS将在Redactor插件之前,也可能在jquery之前。 只需添加依赖

$this->registerJs($script,['depends' => [\yii\web\JqueryAsset::className()]]);

然后检查您的代码在打印的HTML中的位置

如果它仍然在Redactor插件之前,你可以创建一个新的JS文件并添加到Redactor插件下面的AppAsset.php