2016-11-01 3 views
0

Я установил последнюю версию laravel .. В моем приложении я использовал пакет barryvdh/laravel-dompdf. И я сделал некоторые изменения шрифта в пакетах Pdf ..Composer/Laravel: Не обновлять конкретную папку внутри поставщика

Теперь моя проблема, давая обновления композитора это «barryvdh/Laravel-DOMPDF» не получает обновляет ..Это следует игнорировать то только мои изменения не влияет ..

composer update 

А вот пакет я пытался добавить в мой проект: https://github.com/barryvdh/laravel-dompdf

Любые предложения?

+0

Какие изменения вы внесли? В [комментарии] (http://stackoverflow.com/questions/40355301/composer-laravel-not-update-specific-folder-inside-vendor#comment67967133_40355572) вы упоминаете добавление шрифта, является ли степень вашего изменения? – BrianS

ответ

0

Вы не должны вносить изменения в классы внутри vendor. Вместо этого вы должны заменить extend those classes, чтобы изменить стандартную функциональность.

+0

@how do extend? – Trent

+1

@Trent, невозможно научить вас, как это сделать с помощью одного ответа. Я бы рекомендовал вам прочитать хорошую книгу ООП и некоторые учебники, чтобы понять, как она работает. –

0

@Trent не так сложно объяснить.

Если вы прочтете о ООП, вы получите представление об иерархии, а это значит, что у класса может быть «отец», который он расширяет.

Так что в этом случае продавцы в Laravel загружаются по умолчанию. Итак, скажем, у вас есть класс поставщика под названием «FatherClass», если вы хотите расширить его функциональность, вы можете создать его «ChildClass». Это простой пример:

<?php 

    Class FatherClass{ 
    public function method_one(){ 

     return "Hi, This is method 1"; 
    } 
    } 

    Class ChildClass extends FatherClass{ 

    public function method_two(){ 
     return "Hi, This is method 2"; 
    } 
    } 
    //So now you can create a child object and will have the father and its own methods. 
    $childObject = new ChildClass(); 
    $childObject->method_one(); // Hi, This is method 1 
    $childObject->method_two(); // Hi, This is method 2 
    ?> 

Так как это хорошо понимать для поставщиков?

В вашем случае это класс, который вы должны расширить PDF (https://github.com/barryvdh/laravel-dompdf/blob/master/src/PDF.php).

Так оно и должно быть что-то вроде:

<?php 
    class NewPdfClass extends PDF{ 

    } 

Вы должны быть в состоянии теперь переопределить методы или создавать новые для ваших целей.

Дайте мне знать, если это поможет.

+0

Я добавил некоторые шрифты внутри пакета dompdf внутри папки поставщика ... Если я дам компоновщику обновление .. пакет обновится ??? Я не могу импортировать шрифты с другой стороны, чтобы изменить шрифт pdf .... – Trent

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