24th April 2022
Coding⚑
-
New: Sum up all Cypress documentation.
In particular how to:
- Install it
- Write tests
- Setup the tests
- Do component testing
- Do visual regression testing
-
New: Truncate text given a height.
By default css is able to truncate text with the size of the screen but only on one line, if you want to fill up a portion of the screen (specified in number of lines or height css parameter) and then truncate all the text that overflows, you need to use vue-clamp.
-
If you're using Vue 3 and Vite you can use the environment variables by defining them in
.env
files.You can specify environment variables by placing the following files in your project root:
.env
: Loaded in all cases..env.local
: Loaded in all cases, ignored by git..env.[mode]
: Only loaded in specified mode..env.[mode].local
: Only loaded in specified mode, ignored by git.
An env file simply contains
key=value
pairs of environment variables, by default only variables that start withVITE_
will be exposed.:DB_PASSWORD=foobar VITE_SOME_KEY=123
Only
VITE_SOME_KEY
will be exposed asimport.meta.env.VITE_SOME_KEY
to your client source code, butDB_PASSWORD
will not. So for example in a component you can use:export default { props: {}, mounted() { console.log(import.meta.env.VITE_SOME_KEY) }, data: () => ({ }), }
-
New: Deploy with docker.
And fight to make the environment variables of the docker work, the problem is that these environment variables are set at build time, and can't be changed at runtime by default, so you can't offer a generic fronted Docker and particularize for the different cases. I've literally cried for hours trying to find a solution for this until José Silva came to my rescue. The tweak is to use a docker entrypoint to inject the values we want.
-
New: Testing.
I tried doing component tests with Jest, Vitest and Cypress and found no way of making component tests, they all fail one way or the other.
E2E tests worked with Cypress however, that's going to be my way of action till this is solved.
Other⚑
-
New: Newbie tips.
I've recently started learning how to make web frontends, I feel completely lost xD. I don't know even how to search well what I need, it's like going back to programming 101. So I'm seeing things that you don't see when you already are proficient in a language, so here are some tips.