Intercambiando menos por SASS / eliminando un argumento agregado previamente a TIPE VIA DI.XML en MAGENTO2

magento.stackexchange https://magento.stackexchange.com//questions/90960

  •  13-12-2019
  •  | 
  •  

Pregunta

Entonces, estoy investigando la afirmación de Ben Mark de que es realmente fácil cambiar el PHP menos preprocesador para un SASS ONE. https://twitter.com/benmarks/status/590219053437833217 (no lo compro)

He implicado un preprocesador SASS y agregado en él a través de di.xml como a continuación:

<type name="Magento\Framework\View\Asset\PreProcessor\AlternativeSource">
    <arguments>
        <argument name="alternatives" xsi:type="array">
            <item name="scss" xsi:type="array">
                <item name="class" xsi:type="string">TheExtensionLab\SassPreProcessor\PreProcessor\Adapter\Sass\Processor</item>
            </item>
        </argument>
    </arguments>
</type>

que ahora procesa mis archivos .sass en archivos .css (Mabey no usa el mejor PHP Libary todavía, pero ninguna preocupación puede cambiar eso más tarde).

Sin embargo, ya no quiero que los archivos. Sin pranques. ¿Es posible eliminar un argumento a través de di.xml que se ha agregado a medida a un tipo? En este caso, se agrega menos a medida a AlternativeSource en Magento / Developer / etc / di.xml. Intenté agregar un nodo vacío con el mismo nombre del elemento, pero eso no hizo el truco para mí.

Podría hacerlo, simplemente cree un tema de base completamente vacío que no tiene ningún archivo. Sin ningún tipo, pero que apesta porque entonces no tendría archivos / diseños de plantillas y tendría que crearlos y mantenerlos actualizados.

Progreso actual: https://github.com/theexensensionlab/magento2sass

Si podemos hacer esto, entonces eso también trae el problema de los estilos de administración que actualmente también están. Sin cordones, pero cruzar ese puente cuando lo vamos.

O si existe una forma alterativa de hacer esto, no tiene la sobrecarga de los archivos sin. Sin esfuerzo, pero también tiene mi tema y plantillas del tema en blanco. Soy todos los oídos.

¿Fue útil?

Solución

No se puede eliminar el argumento declarado dentro de otro archivo di.xml.

Pero, parece que la versión del código de su ejemplo es un poco antiguo.

En la versión actual (2.0.0), puede controlar el orden de ordenación de alternativas:

<virtualType name="AlternativeSourceProcessors">
    <arguments>
        <argument name="alternatives" xsi:type="array">
            <item name="scss" xsi:type="array">
                <item name="class" xsi:type="string">TheExtensionLab\SassPreProcessor\PreProcessor\Adapter\Sass\Processor</item>
            </item>
            <item name="less" xsi:type="array">
                <item name="after" xsi:type="string">scss</item>
            </item>
        </argument>
    </arguments>
</virtualType>

Si su archivo de origen SCSS se procesará con éxito, la compilación de menos fuente no se activará en absoluto.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top