elm - name - meta tags seo
Usando paquetes locales (3)
El uso más fácil de los paquetes locales está en la lista de tareas pendientes. Me temo que su enfoque actual es el estado del arte. Hágalo como si lo hiciera ahora o copie el código del paquete (¿o tal vez carpetas de módulos de enlaces simbólicos / archivos .elm de my-lib/src
en my-app/src
?)
El hilo más reciente en la lista de correo sobre este problema: https://groups.google.com/d/topic/elm-discuss/i51Bor6Uers/discussion
Tengo un paquete Elm (fuente + todos los artefactos de compilación) en un directorio local, y me gustaría usarlo desde otro paquete Elm, sin publicar la biblioteca. Así que mi configuración de directorio se ve así:
/
my-lib/
elm-package.json
my-app/
elm-package.json
En primer lugar, ejecutar elm-package install
en el directorio del paquete de la biblioteca no parece hacer nada más que construir el paquete; no se instala en ningún directorio global por lo que puedo decir.
He añadido my-lib
a my-app/elm-package.json
como tal:
"dependencies": {
"elm-lang/core": "1.0.0 <= v < 2.0.0",
"my-vendor/my-lib": "0.0.1 <= v <= 0.0.1"
}
Así que cuando ejecuto elm-make
en el directorio del paquete dependiente, se queja
No hay versiones del paquete
my-vendor/my-lib
en su computadora.
elm-package install
queja de lo mismo.
La única solución que he encontrado es crear los siguientes enlaces simbólicos en my-app
:
/
my-app/
elm-stuff/
packages/
my-vendor/
my-lib/
0.0.1@ -> /my-lib/
build-artifacts/
my-vendor@ -> /my-lib/build-artifacts/my-vendor
También tuve que agregar lo siguiente a /my-app/elm-stuff/exact-dependencies.json
:
"my-vendor/elm-lib": "0.0.1"
Claramente, todo lo anterior debería ser atendido automáticamente por elm-package
, si tan solo pudiera apuntarlo a /my-lib/
from /my-app/
. Entonces, ¿cómo hago eso?
En 2017 (elm 0.18) puedes hacer lo siguiente:
Sobrescribir un paquete publicado con una versión clonada local
Si tiene una dependencia de un paquete publicado que le gustaría hacer local, elimine su dependencia, por ejemplo:
"dependencies": {
"rtfeldman/elm-css": "8.2.0 <= v < 9.0.0"
}
Luego haga un elm-make
de su proyecto (esto debería eliminar el paquete de su directorio elm-stuff, de lo contrario, usará la versión en caché del paquete. Luego, clone y haga referencia al paquete localmente como se indica en los pasos a continuación.
Referencia un paquete local
Puede hacer referencia a cualquier proyecto de elm localmente agregándolo a source-directories
como este:
"source-directories": [
".",
"src",
"../elm-css/src"
],
Agregue las dependencias del paquete referenciado localmente a su elm-package.json
elm-css tiene estas dependencias:
"rtfeldman/elm-css-util": "1.0.2 <= v < 2.0.0",
"rtfeldman/hex": "1.0.0 <= v < 2.0.0"
Así que agrega esto a tu elm-package.json también.
Has terminado
Puede rastrear el estado de esta característica en esta solicitud de mejora .