Корпус панели расширения Vuetify не имеет стиля отображения в среде тестирования

Простое объяснение по аналогии

Президент Соединенных Штатов использует полиморфизм. Как? Ну, у него есть много советников:

  1. Военные советники
  2. Юридические советники
  3. Ядерные физики (в качестве советников)
  4. Медицинские консультанты
  5. и т. д. и т. д.

Каждый должен отвечать только за одно: Пример:

Президент не является экспертом в области цинкового покрытия, или квантовая физика. Он не знает много чего, но он знает только одно: как управлять страной.

Это похоже на код: проблемы и обязанности должны быть разделены на соответствующие классы / люди. В противном случае у вас будет президент, знающий буквально все в мире - всю Википедию. Представьте, что у вас есть вся википедия в классе вашего кода: это будет кошмар для поддержания.

Почему эта идея является плохой идеей для президента, чтобы знать все эти конкретные вещи?

Если бы президент конкретно рассказывал людям, что делать, это означало бы, что президенту нужно знать точно, что делать. Если президенту нужно самому знать конкретные вещи, это означает, что когда вам нужно внести изменения, вам нужно сделать это в двух местах, а не одном.

Например, если EPA изменяет законы загрязнения тогда, когда это произойдет: вам придется внести изменения в класс EPA , а также класс президента. Изменение кода в двух местах, а не в одном, может быть опасным - потому что его гораздо труднее поддерживать.

Есть ли лучший подход?

Существует лучший подход: президенту не нужен чтобы знать специфику всего, - он может требовать лучших советов, от людей, которым специально поручено заниматься этими вещами.

Он может использовать полиморфный подход к запуску страны.

Пример - использование полиморфного подхода:

Все президенты спрашивает людей, чтобы советовать ему - и это то, что он на самом деле делает в реальной жизни - и это то, что должен делать хороший президент. его советники все реагируют по-разному, но все они знают, что означает президент, путем: Advise (). У него сотни человек, которые вливаются в его кабинет. На самом деле не важно, кто они. Все, что президент знает, это то, что, когда он просит их «посоветоваться», они знают, как реагировать соответственно :

public class MisterPresident
{
    public void RunTheCountry()
    {
        // assume the Petraeus and Condi classes etc are instantiated.
        Petraeus.Advise(); // # Petraeus says send 100,000 troops to Fallujah
        Condolezza.Advise(); // # she says negotiate trade deal with Iran
        HealthOfficials.Advise(); // # they say we need to spend $50 billion on ObamaCare
    }
}

Этот подход позволяет президенту управлять страной буквально, не зная что-нибудь о военном материале, здравоохранении или международной дипломатии: подробности предоставлены экспертам. Единственное, что должен знать президент, это следующее: «Посоветуйте ()».

Что вы DON «T хотите:

public class MisterPresident
{
    public void RunTheCountry()
    {
        // people walk into the Presidents office and he tells them what to do
        // depending on who they are.

        // Fallujah Advice - Mr Prez tells his military exactly what to do.
        petraeus.IncreaseTroopNumbers();
        petraeus.ImproveSecurity();
        petraeus.PayContractors();

        // Condi diplomacy advice - Prez tells Condi how to negotiate

        condi.StallNegotiations();
        condi.LowBallFigure();
        condi.FireDemocraticallyElectedIraqiLeaderBecauseIDontLikeHim();

        // Health care

        healthOfficial.IncreasePremiums();
        healthOfficial.AddPreexistingConditions();
    }
}

НЕТ НЕТ НЕТ! сценарий, президент делает всю работу: он знает об увеличении численности войск и ранее существовавших условиях. Это означает, что, если политика среднего Востока изменится, тогда президент должен будет изменить свои команды , а также класс Петреуса. Нам остается только изменить класс Петреуса, потому что президенту не нужно увязываться в деталях. Ему не нужно знать подробностей. Все, что ему нужно знать что если он сделает один заказ, все будет позабочено. Все детали должны быть предоставлены экспертам.

Это позволяет президенту делать то, что он делает лучше всего: установить общую политику, хорошо выглядеть и играть в гольф: P.

Как это реализовано - через базовый класс или общий интерфейс

. В действительности это полиморфизм, в двух словах. Как это делается? "я дополняя общий интерфейс "или используя базовый класс (наследование) - см. приведенные выше ответы, которые более подробно описывают это. (Чтобы более четко понять эту концепцию, вам нужно знать, что такое интерфейс, и вам нужно будет понять, что такое наследование. Без этого вы можете бороться.)

Другими словами, Петреус, Конди и HealthOfficials - это все классы, которые «реализуют интерфейс» - назовем его интерфейсом IAdvisor, который содержит только один метод: Advise(). Но теперь мы вникаем в специфику.

Это было бы идеально

    public class MisterPresident
    {
            // You can pass in any advisor: Condi, HealthOfficials, Petraeus etc. The president has no idea who it will be. But he does know that he can ask them to "advise" and that's all Mr Prez cares for.
        public void RunTheCountry(IAdvisor governmentOfficer)
        {             
            governmentOfficer.Advise();              
        }
    }


    public class USA
    {
        MisterPresident president;

        public USA(MisterPresident president)
        {
            this.president = president;
        }

        public void ImplementPolicy()
        {
            IAdvisor governmentOfficer = getAdvisor(); // Returns an advisor: could be condi, or petraus etc.
            president.RunTheCountry(governmentOfficer);
        }
    }

Резюме

Все, что вам действительно нужно знать, это следующее:

  • президенту не нужно знать специфику - те, которые оставлены другим.
  • Все, что должен знать президент, - это спросить, кто когда-нибудь ходит в дверь, чтобы посоветовать ему, - и мы знаем, что они будут абсолютно знать что делать, когда их просят советовать (потому что все они в действительности, советники (или IAdvisors :))

Я действительно надеюсь, что это поможет вам. Если вы ничего не поймете, опубликуйте комментарий, и я попробую еще раз.

0
задан PenAndPapers 5 March 2019 в 07:49
поделиться

1 ответ

Завершено с использованием приведенного ниже кода для заголовков панели, и атрибут style больше не добавляется в заголовок панели расширения.

<div slot="header">
    <h3>{{acl.module_name}}</h3>
</div>

Не уверен, почему использование шаблона добавляет атрибут style в моем случае

<template v-slot:header>
    <div>
        <h3>{{acl.module_name}}</h3>
    </div>
</template>
0
ответ дан PenAndPapers 5 March 2019 в 07:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: