在Symfony2中使用JavaScript供应商



我的symfony2 project有一个 composer.json文件,该文件引用了ckeditor软件包:

"require": {
    ...
    "ckeditor/ckeditor": "4.4.*"
},

当我在twig视图中包含主javascript文件时:

{% javascripts
    '../vendor/ckeditor/ckeditor/ckeditor.js'
%}
    <script src="{{ asset(asset_url) }}"></script>
{% endjavascripts %}

它呈现以下URL的脚本路径:

http://myproject.local/app_dev.php/js/1c365ca_ckeditor_2.js"

如果是独立的JavaScript文件,这将很好,但是ckeditor.js无法在vendor/ckeditor目录中引用其许多其他依赖项。即使我明确将它们全部包含在Assetic中,我也无法更新其相对路径,以便Ckeditor可以看到它们。

我敢肯定,此问题适用于所有大型JavaScript库。通常如何接近?

我遇到了完全相同的问题,我认为在与未集成在捆绑中的第三方独立库时,资产不是最好的工具。

因此,我通过在我的Symfony项目的web目录中创建指向CKEditor供应商目录的象征链接来找到解决方法:

cd web
ln -s ../vendor/ckeditor/ckeditor/ ./ckeditor

然后在我的树枝模板中,我称为ckeditor脚本:

<script type="text/javascript" src="/ckeditor/ckeditor.js"></script>
<script type="text/javascript">
        // Change CKeditor basepath configuration
        CKEDITOR.basePath = "/ckeditor/";
        // Replace the <textarea id="editor1"> with a CKEditor
        // instance, using default configuration.
        CKEDITOR.replace( 'editor1' );
</script>

在ckeditor捆绑包上查看:github -packagist

此捆绑包是Symfony的Ckeditor的集成。

您可以在您的表格中插入ckeditor区域。

相关内容

  • 没有找到相关文章

最新更新