Как решить & ldquo; Не удается найти модуль & rdquo; ошибка при использовании Node.js?

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

Public Class CarFactory
  Protected Overridable Function DerivedMakeCar() as Car
    ' make a car
  End Function

  Public Function MakeCar() as Car
    Return DerivedMakeCar()
  End Function

End Class

Public Class FordFactory
  Inherits CarFactory

  Protected Overrides Function DerivedMakeCar() As Car
    Return DerivedMakeFord()
  End Function

  Protected Overridable Function DerivedMakeFord() As Ford
    ' Make a Ford
  End Function

  Public Shadows Function MakeCar() As Ford
    Return DerivedMakeFord()
  End Function

End Class

. В некоторых случаях проще альтернатива публичная переопределяемая функция MakeCar (), которая всегда возвращает объект типа Car, но имеет форму FordFactory, которая также включает функцию MakeFord (), которая возвращает Ford.

Функция переопределенного MakeCar () будет NotOverridable и просто вызовет MakeFord. В некотором смысле, последний подход может быть более чистым, но если существует общее соглашение об именах (например, фабрики имеют метод MakeProduct, который возвращает наиболее производный тип), может быть полезно использовать Shadows.

522
задан Peter Mortensen 25 October 2016 в 15:24
поделиться

1 ответ

Каждый раз package-lock.json изменения, npm ci должны работать перед под управлением кодом. Принятие кода запускается с start, npm сценарий, npm ci может автоматически работать со следующим prestart npm сценарий

{
  "scripts": {
    "prestart": "npx @olegjs/on-change --file package-lock.json npm ci"
  }
}

0
ответ дан 22 November 2019 в 22:16
поделиться
Другие вопросы по тегам:

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