search
CursosEmpresasBlogLiveConfPrecios
Curso Práctico de Vue.js

Creación del proyecto

Curso Práctico de Vue.js

Contenido del curso

Introducción

  • 1
    Construye una aplicación para el control de tus gastos con Vue.js

    Construye una aplicación para el control de tus gastos con Vue.js

    04:05 min
  • 2
    Creación del proyecto

    Creación del proyecto

    Viendo ahora

Setup inicial

  • 3
    Splashscreen

    Splashscreen

    13:49 min
  • 4
    Header y contenido

    Header y contenido

    14:27 min
  • 5
    Layout

    Layout

    13:12 min

Vista

  • 6
    Resumen de datos

    Resumen de datos

    10:01 min
  • 7
    Agregando formato a la moneda

    Agregando formato a la moneda

    08:12 min
  • 8
    Componente del historial

    Componente del historial

    15:40 min
  • 9
    Lista del historial

    Lista del historial

    16:56 min
  • 10
    El botón para agregar

    El botón para agregar

    17:59 min
  • 11
    Formulario para agregar

    Formulario para agregar

    14:00 min

Gráfico

  • 12
    Creación del SVG del gráfico

    Creación del SVG del gráfico

    15:34 min
  • 13
    Creación de las coordenadas en el gráfico

    Creación de las coordenadas en el gráfico

    18:50 min
  • 14
    Creación de la lógica del gráfico

    Creación de la lógica del gráfico

    12:47 min
  • 15
    Creando la interacción con el gráfico

    Creando la interacción con el gráfico

    17:14 min

Modelo

  • 16
    Modelo de datos

    Modelo de datos

    12:40 min
  • 17
    Agregar y quitar

    Agregar y quitar

    10:54 min
  • 18
    Persistencia del modelo

    Persistencia del modelo

    13:29 min
  • 19
    Últimos detalles de nuestra aplicación

    Últimos detalles de nuestra aplicación

    12:26 min

Cierre

  • 20
    Poniendo nuestra aplicación en producción en Netlify

    Poniendo nuestra aplicación en producción en Netlify

    08:42 min
  • 21
    ¿Quieres más cursos de Vue?

    ¿Quieres más cursos de Vue?

    01:27 min
Tomar examen

Creación del proyecto

Escuelas

  • Desarrollo Web
    • Fundamentos del Desarrollo Web Profesional
    • Diseño y Desarrollo Frontend
    • Desarrollo Frontend con JavaScript
    • Desarrollo Frontend con Vue.js
    • Desarrollo Frontend con Angular
    • Desarrollo Frontend con React.js
    • Desarrollo Backend con Node.js
    • Desarrollo Backend con Python
    • Desarrollo Backend con Java
    • Desarrollo Backend con PHP
    • Desarrollo Backend con Ruby
    • Bases de Datos para Web
    • Seguridad Web & API
    • Testing Automatizado y QA para Web
    • Arquitecturas Web Modernas y Escalabilidad
    • DevOps y Cloud para Desarrolladores Web
  • English Academy
    • Inglés Básico A1
    • Inglés Básico A2
    • Inglés Intermedio B1
    • Inglés Intermedio Alto B2
    • Inglés Avanzado C1
    • Inglés para Propósitos Específicos
    • Inglés de Negocios
  • Marketing Digital
    • Fundamentos de Marketing Digital
    • Marketing de Contenidos y Redacción Persuasiva
    • SEO y Posicionamiento Web
    • Social Media Marketing y Community Management
    • Publicidad Digital y Paid Media
    • Analítica Digital y Optimización (CRO)
    • Estrategia de Marketing y Growth
    • Marketing de Marca y Comunicación Estratégica
    • Marketing para E-commerce
    • Marketing B2B
    • Inteligencia Artificial Aplicada al Marketing
    • Automatización del Marketing
    • Marca Personal y Marketing Freelance
    • Ventas y Experiencia del Cliente
    • Creación de Contenido para Redes Sociales
  • Inteligencia Artificial y Data Science
    • Fundamentos de Data Science y AI
    • Análisis y Visualización de Datos
    • Machine Learning y Deep Learning
    • Data Engineer
    • Inteligencia Artificial para la Productividad
    • Desarrollo de Aplicaciones con IA
    • AI Software Engineer
  • Ciberseguridad
    • Fundamentos de Ciberseguridad
    • Hacking Ético y Pentesting (Red Team)
    • Análisis de Malware e Ingeniería Forense
    • Seguridad Defensiva y Cumplimiento (Blue Team)
    • Ciberseguridad Estratégica
  • Liderazgo y Habilidades Blandas
    • Fundamentos de Habilidades Profesionales
    • Liderazgo y Gestión de Equipos
    • Comunicación Avanzada y Oratoria
    • Negociación y Resolución de Conflictos
    • Inteligencia Emocional y Autogestión
    • Productividad y Herramientas Digitales
    • Gestión de Proyectos y Metodologías Ágiles
    • Desarrollo de Carrera y Marca Personal
    • Diversidad, Inclusión y Entorno Laboral Saludable
    • Filosofía y Estrategia para Líderes
  • Diseño de Producto y UX
    • Fundamentos de Diseño UX/UI
    • Investigación de Usuarios (UX Research)
    • Arquitectura de Información y Usabilidad
    • Diseño de Interfaces y Prototipado (UI Design)
    • Sistemas de Diseño y DesignOps
    • Redacción UX (UX Writing)
    • Creatividad e Innovación en Diseño
    • Diseño Accesible e Inclusivo
    • Diseño Asistido por Inteligencia Artificial
    • Gestión de Producto y Liderazgo en Diseño
    • Diseño de Interacciones Emergentes (VUI/VR)
    • Desarrollo Web para Diseñadores
    • Diseño y Prototipado No-Code
  • Contenido Audiovisual
    • Fundamentos de Producción Audiovisual
    • Producción de Video para Plataformas Digitales
    • Producción de Audio y Podcast
    • Fotografía y Diseño Gráfico para Contenido Digital
    • Motion Graphics y Animación
    • Contenido Interactivo y Realidad Aumentada
    • Estrategia, Marketing y Monetización de Contenidos
  • Desarrollo Móvil
    • Fundamentos de Desarrollo Móvil
    • Desarrollo Nativo Android con Kotlin
    • Desarrollo Nativo iOS con Swift
    • Desarrollo Multiplataforma con React Native
    • Desarrollo Multiplataforma con Flutter
    • Arquitectura y Patrones de Diseño Móvil
    • Integración de APIs y Persistencia Móvil
    • Testing y Despliegue en Móvil
    • Diseño UX/UI para Móviles
  • Diseño Gráfico y Arte Digital
    • Fundamentos del Diseño Gráfico y Digital
    • Diseño de Identidad Visual y Branding
    • Ilustración Digital y Arte Conceptual
    • Diseño Editorial y de Empaques
    • Motion Graphics y Animación 3D
    • Diseño Gráfico Asistido por Inteligencia Artificial
    • Creatividad e Innovación en Diseño
  • Programación
    • Fundamentos de Programación e Ingeniería de Software
    • Herramientas de IA para el trabajo
    • Matemáticas para Programación
    • Programación con Python
    • Programación con JavaScript
    • Programación con TypeScript
    • Programación Orientada a Objetos con Java
    • Desarrollo con C# y .NET
    • Programación con PHP
    • Programación con Go y Rust
    • Programación Móvil con Swift y Kotlin
    • Programación con C y C++
    • Administración Básica de Servidores Linux
  • Negocios
    • Fundamentos de Negocios y Emprendimiento
    • Estrategia y Crecimiento Empresarial
    • Finanzas Personales y Corporativas
    • Inversión en Mercados Financieros
    • Ventas, CRM y Experiencia del Cliente
    • Operaciones, Logística y E-commerce
    • Gestión de Proyectos y Metodologías Ágiles
    • Aspectos Legales y Cumplimiento
    • Habilidades Directivas y Crecimiento Profesional
    • Diversidad e Inclusión en el Entorno Laboral
    • Herramientas Digitales y Automatización para Negocios
  • Blockchain y Web3
    • Fundamentos de Blockchain y Web3
    • Desarrollo de Smart Contracts y dApps
    • Finanzas Descentralizadas (DeFi)
    • NFTs y Economía de Creadores
    • Seguridad Blockchain
    • Ecosistemas Blockchain Alternativos (No-EVM)
    • Producto, Marketing y Legal en Web3
  • Recursos Humanos
    • Fundamentos y Cultura Organizacional en RRHH
    • Atracción y Selección de Talento
    • Cultura y Employee Experience
    • Gestión y Desarrollo de Talento
    • Desarrollo y Evaluación de Liderazgo
    • Diversidad, Equidad e Inclusión
    • AI y Automatización en Recursos Humanos
    • Tecnología y Automatización en RRHH
  • Finanzas e Inversiones
    • Fundamentos de Finanzas Personales y Corporativas
    • Análisis y Valoración Financiera
    • Inversión y Mercados de Capitales
    • Finanzas Descentralizadas (DeFi) y Criptoactivos
    • Finanzas y Estrategia para Startups
    • Inteligencia Artificial Aplicada a Finanzas
    • Domina Excel
    • Financial Analyst
    • Conseguir trabajo en Finanzas e Inversiones
  • Startups
    • Fundamentos y Validación de Ideas
    • Estrategia de Negocio y Product-Market Fit
    • Desarrollo de Producto y Operaciones Lean
    • Finanzas, Legal y Fundraising
    • Marketing, Ventas y Growth para Startups
    • Cultura, Talento y Liderazgo
    • Finanzas y Operaciones en Ecommerce
    • Startups Web3 y Blockchain
    • Startups con Impacto Social
    • Expansión y Ecosistema Startup
  • Cloud Computing y DevOps
    • Fundamentos de Cloud y DevOps
    • Administración de Servidores Linux
    • Contenerización y Orquestación
    • Infraestructura como Código (IaC) y CI/CD
    • Amazon Web Services
    • Microsoft Azure
    • Serverless y Observabilidad
    • Certificaciones Cloud (Preparación)
    • Plataforma Cloud GCP

Platzi y comunidad

  • Platzi Business
  • Live Classes
  • Lanzamientos
  • Executive Program
  • Trabaja con nosotros
  • Podcast

Recursos

  • Manual de Marca

Soporte

  • Preguntas Frecuentes
  • Contáctanos

Legal

  • Términos y Condiciones
  • Privacidad
  • Tyc promociones
Reconocimientos
Reconocimientos
Logo reconocimientoTop 40 Mejores EdTech del mundo · 2024
Logo reconocimientoPrimera Startup Latina admitida en YC · 2014
Logo reconocimientoPrimera Startup EdTech · 2018
Logo reconocimientoCEO Ganador Medalla por la Educación T4 & HP · 2024
Logo reconocimientoCEO Mejor Emprendedor del año · 2024
De LATAM conpara el mundo
YoutubeInstagramLinkedInTikTokFacebookX (Twitter)Threads

Comentarios25

Francisco Javier Saavedra Alcala

Francisco Javier Saavedra Alcala

Estudiante
Hace 4 años
    Alvaro Eduardo Armijos Sarango

    Alvaro Eduardo Armijos Sarango

    Estudiante
    Hace 4 años
    Daniel Chaveau

    Daniel Chaveau

    Estudiante
    Hace 4 años
Sergio Fernandez

Sergio Fernandez

Estudiante
Hace 4 años
    Yefreilee Danny Samuel Parra

    Yefreilee Danny Samuel Parra

    Estudiante
    Hace 4 años
    Alan German Beck

    Alan German Beck

    Estudiante
    Hace un año
Eduardo Razo Cobián

Eduardo Razo Cobián

Estudiante
Hace 4 años
    Ángel David Vargas Hernández

    Ángel David Vargas Hernández

    Estudiante
    Hace 4 años
    Mauricio Jourdan

    Mauricio Jourdan

    Estudiante
    Hace 4 años
Javier Andrés Moreno Tocarruncho

Javier Andrés Moreno Tocarruncho

Estudiante
Hace 4 años
Eduardo Torres

Eduardo Torres

Estudiante
Hace 3 años
Rodolfo Parada

Rodolfo Parada

Estudiante
Hace 4 años
    Diana Martinez

    Diana Martinez

    Estudiante
    Hace 4 años
Matium Stuart Guillen Bogantes

Matium Stuart Guillen Bogantes

Estudiante
Hace 3 años
José Daniel Calle Briceño

José Daniel Calle Briceño

Estudiante
Hace 4 años
Yefreilee Danny Samuel Parra

Yefreilee Danny Samuel Parra

Estudiante
Hace 4 años
    Diana Martinez

    Diana Martinez

    Estudiante
    Hace 4 años
Carlos Rodríguez

Carlos Rodríguez

Estudiante
Hace 4 años
    Daniel Pinto Salazar

    Daniel Pinto Salazar

    Estudiante
    Hace 4 años
Alexandra Salazar

Alexandra Salazar

Estudiante
Hace 4 años
    Kevin Fiorentino

    Kevin Fiorentino

    Estudiante
    Hace 4 años
Eden Gomez Gress

Eden Gomez Gress

Estudiante
Hace 4 años
    Eden Gomez Gress

    Eden Gomez Gress

    Estudiante
    Hace 4 años
    THALIA CUADROS

    THALIA CUADROS

    Estudiante
    Hace 4 años
Helio Sampe Reyes

Helio Sampe Reyes

Estudiante
Hace 7 meses
Aberto Jorge Saavedra Angel

Aberto Jorge Saavedra Angel

Estudiante
Hace 8 meses
José Rafael Gutierrez Blanco

José Rafael Gutierrez Blanco

Estudiante
Hace 3 años
    Diana Martinez

    Diana Martinez

    Estudiante
    Hace 3 años
Rodolfo Parada

Rodolfo Parada

Estudiante
Hace 4 años
    Diana Martinez

    Diana Martinez

    Estudiante
    Hace 4 años
Yefreilee Danny Samuel Parra

Yefreilee Danny Samuel Parra

Estudiante
Hace 4 años
    Diana Martinez

    Diana Martinez

    Estudiante
    Hace 4 años
    Yefreilee Danny Samuel Parra

    Yefreilee Danny Samuel Parra

    Estudiante
    Hace 4 años
Laureano Andres Lopez Ortiz

Laureano Andres Lopez Ortiz

Estudiante
Hace 4 años
ALVARO ZENON QUISPE SEGALES

ALVARO ZENON QUISPE SEGALES

Estudiante
Hace 4 años
Eduardo Razo Cobián

Eduardo Razo Cobián

Estudiante
Hace 4 años

Si al igual que a mi Eslint te esta volviendo loco 🤯 sólo crea un archivo llamado .eslintignore y agrega las lineas

/build/ /config/ /dist/ /*.js /test/unit/coverage/ *

Y listo, eslint no te molestara mas 💃

Genial

Eres grande, jajaja

En la carpeta assets pueden colocar el comando

wget https://static.platzi.com/media/public/uploads/close-icon_039b6837-d928-4f74-a2e9-7953715dbfd8.svg -O cashflow-icon.svg wget https://static.platzi.com/media/public/uploads/trash-icon_5de37388-586f-4cb9-8ba9-1fabd994cb28.svg -O close-icon.svg wget https://static.platzi.com/media/public/uploads/cashflow-icon_070076db-e83a-4afa-b18d-ee058c2b646e.svg -O trash-icon.svg

y asi descargan los svg al instante

Que bien, no sabia que se pudiera hacer eso desde la terminal, buen aporte, gracias!

idolo, gracias !

Si les muestra el siguiente error:

!imagen

Pueden agregar una excepción en la configuración de eslint en el archivo .exlintrc.js, agregando lo siguiente:

module.exports = { .... overrides: [ { files: ['src/components/**/*.vue'], rules: { 'vue/multi-word-component-names': 0, }, }, ], };

Muchas gracias!

Parece más simple seguir las buenas prácticas y nombrar los componentes creados por nosotros con más de una palabra. El componente Home podría llamarse HomePage. https://es.vuejs.org/v2/style-guide/#Nombre-de-componentes-base-altamente-recomendado

Hola, les dejo el link de Figma que está en la clase anterior...

https://www.figma.com/file/P3EL4J17QtATlH1lqYryfG/Personal-CashFlow?node-id=0%3A1

Les comparto mi configuración para trabajar con eslint y prettier sin errores en Visual Studio Code.

Paso 1: Instalar plugin Prettier - Code formatter

prettier.png

Paso 2: Habilitar como default formater: CTRL + SHIFT + P -> Format Document With -> Seleccionar Prettier Code Formater.

default-formatter.png

Pas 3: Configurar el auto formateo al guardar documento Crear una carpeta en el proyecto llamado .vscode y dentro de la carpeta un archivo settings.json

Pegar el siguiente codigo

{ "editor.formatOnSave": true }
vs-settings.png

Por último agregar una regla de eslint para permitir que los componentes en Vue sean de una sola palabra:

eslint-rule.png

rules: { "no-console": process.env.NODE_ENV === "production" ? "warn" : "off", "no-debugger": process.env.NODE_ENV === "production" ? "warn" : "off", "vue/multi-word-component-names": "off", },

estaá dificil seguir este curso ya que es posible que estee desactualizado, he buscado como solucionarlo los problemas y no puedo.

Nos ayudaría mucho conocer los errores que te han surgido, seguramente podemos ayudar. Mientras tanto te recomendaría utilizar la misma versión de Vue que este curso, seguramente será más fácil, y los conceptos no cambian demasiado entre versiones, el API de Vue suele ser muy estable, sin cambios mayores.

npm run lint --fix

con eso arreglarán errores que tengan

Necesitan utilizar Prettier.

OnPaste.20220406-114900.png
Como recomendación, activen la opción de auto formateo al "Ctrl + S"
OnPaste.20220406-115048.png
Asegúrense de que Prettier es su formateador por defecto:

  1. Ctrl + Shift + P
  2. “Format document with…”
OnPaste.20220406-114532.png

Para los que le de error de Multi-word, que ya me venia enloqueciendo, encontré en StackOverFlow esta solución: En el archivo .eslintrc.js, en la sección rules agreguen esto:

Espero le sirva a alguien mas :X saludos.

"vue/multi-word-component-names": "off",

Claro, también puedes asegurarte de ponerle a los componentes nombres de al menos dos palabras, tipo HomePage.vue, ButtonComponent.vue, etc...

Esta es mi confugarión inicial, lo he hecho con sass con buenas prácticas en diseño y algunas configuraciones de eslint con prettier para que no les dé dolores de cabeza: . Mi repositorio commit actual: Click aquí

Gracias por tu configuración en los archivos .eslintignore .eslintrc.js .prettierignore y .prettierrc.json

¿Que gestor de paquetes me recomiendan utilizar YARN o NPM? (es la última pregunta del Wizzard de creación del proyecto)

NPM es mucho más utilizado, YARN tiene otras características muy interesantes como guardar dependencias en caché. Si estás comenzando, NPM es lo mejor.

Yo encontre esto en Stackoverflow y me funciono, se los dejo y espero les sirva:

https://stackoverflow.com/questions/70346829/eslint-vue-multiword-components

Una de las opciones y funcionó :) ¡Gracias!

igual he usando componentes con dos palabras separados por - me dió error buscaré otro curso este no me gustó

Si aun tienen problemas con lo de que deben ser mas palabras para el nombre del componente, a mi me sirvio modificar el archivo package.json

la linea de codigo

   "vue/multi-word-component-names": "off"

buenos dias tengo una pregunta viendo el curso me he percatado de que cuando creas un componente le das un solo nombre ejemplo Home.vue, pero desde hace tiempo para acá que he trabajado poco con vue js me exige que los componente deben tener 2 nombre

Si, ese es un tema de configuración del linter eslint o prettier, son reglas que cada proyecto puede configurar, y en este caso ya trae algunas por defecto, como esa de usar 2 palabras, en realidad a Vue le es indiferente, y eso ya depende del linter.

me siento desepcionado con este curso.....lo mejorarán??

¿Qué te gustaría ver en una renovación de este curso?

Lo que nunca logro entender, es porque a la profesora nunca le muestra ningun error de eslint ni prettier, estaria bueno que nos explicara eso, porque siempre hay un error!

Simplemente ejecuto el fix automático al guardar los cambios, así prettier soluciona los errores fáciles, si queda alguno solo sería corregirlo a mano.

Gracias Profesora

Cuando vayas a crear el componente Home.vue, asigna un nombre diferente, por ejemplo MyHome.vue. De esta forma, te evitarás errores al desplegar la aplicación, ya que, de acuerdo con una de las reglas de Vue, los componentes no pueden ser de una sola palabra.

si el slint les molesta pueden agregar la siguiente linea en el archivo "vue.config.js":

const { defineConfig } = require("@vue/cli-service"); module.exports = defineConfig({ transpileDependencies: true, lintOnSave: false // deshabilitar slint });

En el archivo vue.config.js añadi al linea: "lintOnSave: false," Para que pare de revisar al guardar cada modificación...