teleren/devto huggingface dataset:
Gà Việt SV388
Published: 2024-05-19 09:05:35

Khám phá Sự Hấp Dẫn của Gà Việt tại nhà cái đá gà hàng đầu Việt Nam - SV388! Đắm chìm trong thế giới đá gà sôi động với sự đa dạng và chất lượng của các trận đấu tại SV388. 

Với sự đặc biệt của gà Việt, trải nghiệm cá cược đỉnh cao cùng với những trận đấu kịch tính và giải thưởng hấp dẫn.

Thông tin liên hệ:

Website: [https://gavietsv388.it.com/](https://gavietsv388.it.com/)

Email: sv388gadau@gmail.com

Địa Chỉ: 238-254 Hải Thượng Lãn Ông, Tân Giang, Hà Tĩnh, Việt Nam

#gavietsv88 #SV388 #daga #daga388 #tructiepsv388

[https://www.pinterest.com/sv388gadau/](https://www.pinterest.com/sv388gadau/)

[https://500px.com/p/sv388gadau](https://500px.com/p/sv388gadau)

[https://www.linkedin.com/in/sv-gadau-80a888309/](https://www.linkedin.com/in/sv-gadau-80a888309/)

[https://www.tumblr.com/sv388gadau](https://www.tumblr.com/sv388gadau)
[https://twitter.com/sv388gadau](https://twitter.com/sv388gadau)
Gà Việt SV388
Published: 2024-05-19 09:05:27

Khám phá Sự Hấp Dẫn của Gà Việt tại nhà cái đá gà hàng đầu Việt Nam - SV388! Đắm chìm trong thế giới đá gà sôi động với sự đa dạng và chất lượng của các trận đấu tại SV388. 

Với sự đặc biệt của gà Việt, trải nghiệm cá cược đỉnh cao cùng với những trận đấu kịch tính và giải thưởng hấp dẫn.

Thông tin liên hệ:

Website: [https://gavietsv388.it.com/](https://gavietsv388.it.com/)

Email: sv388gadau@gmail.com

Địa Chỉ: 238-254 Hải Thượng Lãn Ông, Tân Giang, Hà Tĩnh, Việt Nam

#gavietsv88 #SV388 #daga #daga388 #tructiepsv388

[https://www.pinterest.com/sv388gadau/](https://www.pinterest.com/sv388gadau/)

[https://500px.com/p/sv388gadau](https://500px.com/p/sv388gadau)

[https://www.linkedin.com/in/sv-gadau-80a888309/](https://www.linkedin.com/in/sv-gadau-80a888309/)

[https://www.tumblr.com/sv388gadau](https://www.tumblr.com/sv388gadau)
[https://twitter.com/sv388gadau](https://twitter.com/sv388gadau)
Smart Renovation-Best Kitchen and Bathroom Renovations
Tags: kitchen, kitchenrenovationservice, bathroomrenovationsservice
Published: 2024-05-19 08:59:31

Smart Renovations offers top-quality kitchen and bathroom renovations in Richmond Hill. We specialize in transforming outdated spaces into modern, functional areas that meet your needs and style preferences. Whether you want a sleek, contemporary kitchen or a luxurious, spa-like bathroom, **[Smart Renovations](https://smartreno4u.ca/)** handles everything from design to completion. Our experienced team ensures high-quality workmanship and attention to detail, making your renovation process smooth and stress-free. Choose Smart Renovation for a beautiful and practical upgrade to your home.
Contact Details 
Address:10815 Bathurst Street, Unit 5 Richmond Hill, ON L4C 9Y2
Email Us: info@SmartReno4u.ca
Call Us:905-787-0880
Website:https://smartreno4u.ca/
How does react-vchart achieve on-demand loading?
Tags: visactor, visualization, javascript, webdev
Published: 2024-05-19 08:44:50

## Title

How does react-vchart achieve on-demand loading?
<br>

## Description

H5 project uses vchart volume limit, can it support on-demand loading now? Currently only one funnel chart is used.
<br>

## Solution

React-VChart itself supports on-demand loading. When VChart needs to be loaded on demand, it is recommended to use the `<VChartSimple />` tag,
The `<VChartSimple />` component and the `<VChart />` component are used in almost the same way. The only difference is that users need to import the `VChart` constructor class from `@viasctor/vchart` and pass it to `<VChartSimple />`; Reference for on-demand import of VChart [related documents](https://www.visactor.io/vchart/guide/tutorial_docs/Load_on_Demand)

```TypeScript
interface VChartSimpleProps extends EventsProps {
  /** the spec of chart */
  spec: any;
  /** the options of chart */
  options?: ChartOptions;
  /** call when the chart is rendered */
  onReady?: (instance: VChart, isInitial: boolean) => void;
  /** throw error when chart run into an error */
  onError?: (err: Error) => void;
  /** 
   * use renderSync
   * @since 1.8.3
   **/
  useSyncRender?: boolean;
  /**
   * skip the difference of all functions
   * @since 1.6.5
   **/
  skipFunctionDiff?: boolean;
  /**
   * the constrouctor class of vchart
   * @since 1.8.3
   **/
  vchartConstrouctor: IVChartConstructor;
}
```

<br>

## Code Example

```JavaScript
/* @refresh reset */
import React, { useMemo } from "react";

import { VChartSimple } from "@visactor/react-vchart";
import { VChart } from "@visactor/vchart/esm/core" 
import { registerFunnelChart } from "@visactor/vchaart/esm/chart/funnel"

// eslint-disable-next-line react-hooks/rules-off-hooks
VChart.useRegisters([registerFunnelChart])

export const FunnelChart = (props) => {
    const spec = useMemo(() =>{
     // ....
    },[]);
    
    return (
        <React.Fragment>
          <VChartSimple spec={spec}_vchartConstrouctor={VChart} />
        </React.Fragment>
    );
};
```

<br>

<br>

## Related Documentation

Related Tutorial：

- https://www.visactor.io/vchart/guide/tutorial\_docs/Cross-terminal\_and\_Developer\_Ecology/react
	
- https://www.visactor.io/vchart/guide/tutorial\_docs/Load\_on\_Demand
	

<br>

github：https://github.com/VisActor/VChart
<br>

<br>
How to set up imports path aliases for (Angular)
Tags: angular, typescript, webdev, tutorial
Published: 2024-05-19 08:41:06

Angular components name becomes unreadable also non maintainable for larger project. Usually we use relative paths to import components like this (`"../../../something"`), which is not suitable for project that has many nested routes.

```ts
import { JobInformationService } from '../../../services/job-information.service';
import { ControlBarComponent } from '../../components/control-bar/control-bar.component';

``` 

We can solve this problem by defining path aliases, we can configure this in `tsconfig.json` file in the root directory.

In the compilerOptions section we can add two things
add this line:
```ts
 "baseUrl": "./src",
```
then also add these, here choose the path and name based on your projects requirement. You can add as many as you want.

```ts
"paths": {
      "@components/*" : ["app/components/*"],
      "@pages/*" : ["app/pages/*"],
    }
```

#### Add this to your `tsconfig.json` file
```ts
  "compilerOptions": {
    "baseUrl": "./src",
    "paths": {
      "@components/*" : ["app/components/*"],
      "@pages/*" : ["app/pages/*"],
    }
  },
```

Now you can import your components, services, etc. directly using `@definedname` , for example you can now use like this 

```ts
import { JobInformationService } from '@services/job-information.service';
import { ControlBarComponent } from '@components/control-bar/control-bar.component';

```
How to change background color on scroll with Tailwind CSS and JavaScript
Tags: webdev, tutorial, javascript, tailwindcss
Published: 2024-05-19 08:40:11

Today Sunday we are doing a short tutorial on how to change the background color of a header and sections based on the user's scroll position, enhancing the overall user experience and engagement.

[Read the article, See it live and get the code](https://lexingtonthemes.com/tutorials/how-to-change-background-coloron-scroll-with-tailwind-css-and-javascript/)
Let's dive into the magical world of React 19 – the latest version of React JS. 🚀✨
Tags: webdev, react, javascript, programming
Published: 2024-05-19 07:53:36



# **React 19: Unleashing the Power of Web Development**

## **1. "The Compiler Chronicles"**
### **Slug: `react-compiler-chronicles`**

In this chapter, we'll explore the all-new React Compiler. Imagine it as a wizard who optimizes your spells (code) for maximum performance. Here's a snippet of its magic:

```javascript
// Before:
const result = useMemo(() => expensiveCalculation(), [dependency]);

// After:
const result = expensiveCalculation();
```

## **2. "Actions Speak Louder"**
### **Slug: `react-actions-speak`**

Actions are like superheroes – they handle form submissions, update content, and keep your website smooth. Behold, the mighty `UseFormStatus` and `UseFormState` hooks:

```javascript
// Simplified form handling:
const handleSubmit = async (data) => {
  try {
    await submitForm(data);
    console.log("Form submitted successfully!");
  } catch (error) {
    console.error("Oops, something went wrong.");
  }
};
```

## **3. "HTML Integration Magic"**
### **Slug: `react-html-integration`**

Actions now waltz with HTML tags. Say goodbye to old-school `onSubmit` handlers:

```html
<!-- Before: -->
<form onSubmit={handleSubmit}>
  <!-- Form fields here -->
</form>

<!-- After: -->
<form actions="/submit-form">
  <!-- Form fields here -->
</form>
```

## **4. "Meta Marvels"**
### **Slug: `react-meta-marvels`**

React 19 is like a superhero team-up – it's used on Instagram.com and soon goes open-source. It's faster, cleaner, and ready to transform your web development journey.

```javascript
// Meta platforms rejoice:
const metaPlatform = "React 19";
console.log(`Powered by ${metaPlatform}`);
```

---

And there you have it! React 19 – where code meets enchantment. 🌟🔮 Whether you're a seasoned sorcerer or a budding apprentice, embrace the magic and create web wonders! Happy coding! 🪄✍️
8 Gmail Hacks that you shouldn't miss
Tags: google, gmail, hacks, tips
Published: 2024-05-19 07:51:12

Gmail is the email service provided by Google. Gmail has almost 2 billion active users globally. But most of us don't know how to use the platform effectively. Here are 8 Gmail hacks that you must know:

**1. Get rid of promotional emails**

- Open Gmail.
- Open the promotional email that you want to remove.
- Click on the 3 vertical dots in the top-right corner of the 
  email.
- Select "Block [sender's name]" from the drop-down menu.
- Click on "Block" in the pop-up window.
- To delete all promotional emails, go to the "Promotions" tab, 
  select all emails & delete.
- To prevent future emails, unsubscribe by
- clicking the "unsubscribe" link at the bottom of the email.

**2. Undo the email you just sent**

- Open the "Sent" folder.
- Find the email that you want to recall and open it.
- Click on the 3 vertical dots in the top-right corner of the 
  email.
- Select "Undo" from the drop-down menu.
- Edit your email in draft folder before sending it again.
- Ensure "undo send" is enabled in your settings
- before using this feature:
- Setting > General > Enable Undo send (with a delay of 10/20/30 
  seconds).

**3. Send a confidential email**

- Open Gmail.
- Click "Compose".
- Enter recipient, subject, and content.
- Next to the "Send" button, click on the lock icon.
- Set an expiration date and passcode for the recipient to open 
  it.
- Click on the "Send" button to send the email.


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/wuvw3iqnn57bm03yk4mq.PNG)

**5. Send your email later**

- Want to make it look like you're at your desk at 0800?
- Now you can do exactly that:
- Click the down arrow next to 'Send'.
- Choose 'Schedule Send'.
- Pick the date + time you want.
- Sit back + relax.

**6. Prep your replies**
 
- Sick of typing out the same replies again + again?
- Enable first in Settings > Advanced >
- Enable templates.
- Draft your email.
- Click the 3 dots.
- Save as template.
- Next time, use that template to save yourself time.

**7. Snooze an email**

- Have an email that you don't need to deal with now?
- Set a reminder for later:
- Click on the clock icon on the right.
- Choose how long you want to snooze the email.
- It'll appear back in your inbox on that date.

**8. Ignore those annoying conversations**

- In an email thread where everyone keeps using 'reply all'?
- Mute it to stop it distracting you:
- Open the email.
- Click the 3 dots at the top.
- Click mute.
- Future replies will be archived (but you can still find them if 
  needed).
Understanding immutability for beginners in React
Tags: javascript, beginners, react, webdev
Published: 2024-05-19 07:40:38

## Table of contents
1. At the beginning
2. What is immutability?
3. Why important?
4. The example of immutable operations
  * Spread Syntax
  * Destructuring assignment
  * Array prototype method
5. Conclusion

## At the beginning
While I'm studying React, I frequently came across the word "immutability" but didn't look into it deeply because it sounded hard to know. However, I want to gain a thorough understanding of it by writing this article.

## What is immutability?
Immutability in React means that we should **not modify the existing state or props directly**. Instead, we should **create a new copy of the state or props** with the desired changes.

## Why do we need immutability?
React detects changes in components **by checking the difference of objects**. This is done for performance reasons and to make re-rendering more predictable.

If you perform mutable operations, the original information is also changed. This means **React cannot detect the difference between the state before and after the change**.

On the other hand, in case of immutable operations, **React can detect the difference because the state before and after the change is referenced separately**. Additionally, since the original state is not changed, it can be kept as a history, allowing for features like undoing changes up to a certain point.

Performing immutable operations ensures that **React can accurately detect changes and provides benefits** like maintaining a history of state changes, which allows for more predictable rendering and additional functionality.

## The example of immutable operations
### Spread Syntax
```React
// update array
const newArray = [...oldArray, newItem];

// update object 
const newObj = {...oldObj, newProp: 'value'}
```

### Destructuring assignment
```React
const obj = { a: 1, b: 2 };
const newObj = { ...obj, b: 3 };
```

### Array prototype method
```React
const newArray = oldArray.map(item => item * 2);
const filtered = oldArray.filter(item => item > 0);
const combined = [...oldArray1, ...oldArray2]; 
```

## Conclusion
Immutability in React provides performance benefits, prevents bugs from unexpected mutations, and makes code easier to reason about. It's a core principle React developers should follow.
Can’t Reach Your Manager? Here’s How to Still Do Your Best Work!
Tags: productivity, beginners, career, development
Published: 2024-05-19 07:37:01

Wouldn't it be great to reach out to your manager and get a response anytime you need it? Unfortunately, that isn't always the case. Many times, the manager is so busy that it's hard to get a response at all.

Here's what I do when it's hard to reach out:

1. Seek information from others or through different channels. Usually, there's more than one person who can help. Choosing the path of least resistance might be the solution.
2. Work independently whenever possible. Sometimes it's faster to complete the work yourself and then seek feedback rather than asking many less important questions, which can lead to significant delays.
3. When you must check in with your manager but they often overlook your messages, try this approach: "I intend to do <...>. If you'd like me to change my course of action, please inform me by EOD."
4. Highlight urgency when necessary. There are times when you can't proceed without your manager's input. In such cases, it’s crucial to let them know that you are blocked without their response. Sometimes a manager's interaction is essential, and that’s part of their job.
5. Discuss and agree on communication preferences. Transparent conversations about preferred communication methods, levels of reporting, and which decisions do or don't require approval can be beneficial. This ensures that both sides are on the same page.

What do you think? Are there any strategies here that you’ve used successfully, or any that you would avoid at all costs?
Learning HTML for Technical Writing
Published: 2024-05-19 07:14:51

## Learning HTML for Technical Writing &#x1F601;

Markdown allows us to write HTML in a quick and fluid way. 
We use this on the regular for our code reviews, comment sections and README files again and again.

## Bold, Italic, and Strikethrough

not bold **bold 1** __bold 2__
not italic _italic 1_ *italic 2*
not strikethrough ~~striked~~

## HTML Challenge - Using Bold, Italic, and Strikethrough in a Paragraph

The teacher is having me write a paragraph and use **bold**, *italic*, and ~~strikethrough~~. 

## Block Quotes and Horizontal Rules
---
> "Jump up, jump up to get down"

## Add a Line Break

---
---
Scrimba really is the perfect platform for teaching something like Markdown. The interactive challenges and custom technology has been designed with this in mind. 

> "You do you. I'm doing me" -RWS

---

## Lists Ordered and Unordered
---
### Ordered List

1. Fill a 3 quart pot with 1.5 quarts of water.
2. Bring water to boil.

    1. Keep the temperature below 180.
    2. Stir frequently.
3. Add 1 lbs peeled shrimp.



### Unordered List

- Socks
- Shoes
- Shoe laces

## Challenge: 3 Pieces of Information

Ok gang, it's time to pack for our camping trip. I'll provide you with a list of items you should think about bringing along. 

- tent
- hiking poles
- toothpaste

Here's the order of boarding the bus:

1. Lineup by height.
2. Allow smallest students to board first.
3. The oldest kids will sit in the front. 

# Code Blocks


```
{
youtubeChannel: 'https://www.youtube.com/@espn26'  
}
```

![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/3dut4zt0nuiwrmj35gh9.png)

[YouTube Channel] (https://www.youtube.com/@espn)

<ryansternbergworks@gmail.com>

I'm Ryan Sternberg a seasoned technical writer looking to become more familiar with coding. I'm a man. Here's a link to my website [www.aiwriterhire.com]


![Image description](https://dev-to-uploads.s3.amazonaws.com/uploads/articles/90rt1pb28xq0g78erw47.png)

# Extended Syntax - Tables
--- 

| Left | Center | Right |
| :--- | :----: | ----: |
| 1    | 2      | 3     |



# Extended Syntax - Automatic URLs
--- 

[My Channel](www.YouTube.com/CodingTutorials360)

www.YouTube.com/CodingTutorials360

`www.YouTube.com/CodingTutorials360 `
Multiple Node.js versions - setup memo
Tags: node, setup, guide
Published: 2024-05-19 07:14:48

While a lot of times, installing the latest version of Node.js via preferred package manager is enough, in some cases more flexibility is needed.
For example, sometimes there are several projects to work on, each of which relies on a specific Node.js version. 

This blog post presents an overview of Node.js setup to support the above scenario.

There are two commonly used tools for managing multiple Node.js versions - `nvm` and `n`.
In this post, we will use `nvm`.

### Using nvm (Node Version Manager)

`nvm`, or Node Version Manager, is a solution provided by Node.js team themselves. It is an [open source]() with straightforward installation and usage flow.

Install with the package manager of your choice. For macOS, I will use Homebrew:
```bash
brew install nvm
```

Next, let's check available Node.js versions:
```bash
nvm ls-remote
```

Let's install the first version:
```bash
nvm install <version>  # Replace <version> with the desired version, e.g., 18.16.0
```

Installed versions could be checked with:
```bash
nvm ls
```

To switch between versions:
```bash
nvm use <version> # Replace <version> with the desired version
```

With that, the setup of multiple Node.js versions has been completed.

It is also possible to set the version as default one with `nvm alias default <version>`.
See [this](https://stackoverflow.com/a/47787025) answer for more details.
Finally, check the version with `node --version` command.

### Resources

- [Node.js official documentation](https://nodejs.org/docs/latest/api/)
- [NVM Github](https://github.com/nvm-sh/nvm)
DangerJS Plugin - TODOs
Tags: cicd, npm, pr, todo
Published: 2020-04-30 14:32:31

---
title: DangerJS Plugin - TODOs
published: true
date: 2020-03-16 18:30:00 UTC
tags: cicd, npm, pr, todo
canonical_url: https://rohit.page/blog/projects/dangerjs-plugin-todos/
---

## What is It?

A plugin for [danger-js](https://danger.systems/js "Danger JS Docs") that collects all the "TODO" comments introduced in a pull request (PR) and posts them as a comment on the PR.

### [NPM JS - Danger Plugin Todos](https://www.npmjs.com/package/danger-plugin-todos)

It's a pretty simple plugin that just scans your diff for matching comments, it supports different language style comments including JS, C, C++, Ruby, Java, Elm, HTML, Bash, etc. ([open an issue](https://github.com/rohit-gohri/danger-plugin-todos/issues "danger-plugin-todos' issues on Github") if something is missing). You can also specify custom keywords other than "TODO" or "FIXME".

## How to set it up?

- Set up [danger-js](https://danger.systems/js "Danger JS Docs") and add it to your continuous integration (CI) pipeline
- Add [danger-plugin-todos](https://www.npmjs.com/package/danger-plugin-todos "danger-plugin-todos on npm") to the "dangerfile" as mentioned in the README

Next time your CI pipeline runs for any PR this plugin will scan the diff to get all the To-Do comments and post them through danger as a comment on the PR. The comment will update on consecutive runs.

## Possible Workflows

#### Scenario A:

Sometimes when you start work on a feature you see things along the way that need to be fixed and you end up adding a To-Do or Fix-Me comment for them. The feature branch then gets merged and the comments quickly gets forgotten if they were not related to a part of the code base that sees frequent updates.

To track such To-Dos this plugin can be used, as a list of them will be added as a comment to the PR. This list of To-Dos can then be moved to a new issue before the PR is merged and the issue added to the backlog.

#### Scenario B:

This plugin can also be used to create an actual auto-updating To-Do List.

Just add all your tasks for the PR in the code as To-Dos and open a Work In Progress (WIP) PR, this will create a list of To-Dos in the PR comments.

Now, as you work on them and remove them the comment will be updated and your list will become smaller. Once you are done with them the PR will be ready to merge.

## More Features Incoming

There are some new ideas that are being worked on ([check the issues here](https://github.com/rohit-gohri/danger-plugin-todos/issues "danger-plugin-todos' open issues")), like:

- **Generate a link to create a new issue with a list of To-Dos automatically** : This would be pretty great for our Scenario A above. Link can be customized to support different issue trackers
- **Show completed To-Dos** : PRs that complete and remove old To-Dos should be celebrated. This would add a success message on removing old To-Dos.

Anyways, I hope this is useful for you. If you have any ideas on how to make this better feel free to message me on [Twitter](https://twitter.com/rohit_gohri "Twitter Profile") or open an issue on the repo.
How to fix 'process' is not defined (React+Vite)
Tags: react, vite, webdev, env
Published: 2024-05-19 06:27:53

Most of the time when we use "create react app" this error not came. but when we working with react+vite its kind of different. So Here's a step-by-step guide to setting up environment variables in a Vite project.

I think you already created a .env file root in your project. if not create .env file in root in your project and ensure all variables should be prefixed with VITE_.

Example:
`VITE_EXAMPLE_API_KEY=your api key`

So we can use import.meta.env object to access these environment variables.

Example:

`export const exerciseOptions ={
    method: 'GET',
    headers: {
      'X-API-Key': import.meta.env.VITE_EXAMPLE_API_KEY,
      'X-API-Host': 'www.example.com'
    }
  };`

After changing environment variables you have to restart the development server to make this work.

By following these steps you can fix this issue.
Video: Using Material 3 (M3) with Angular
Tags: angular, angularmaterial, typescript, webdev
Published: 2024-05-19 06:10:56

---
title: Video: Using Material 3 (M3) with Angular
published: true
description: 
tags: angular,angularmaterial,typescript,webdevelopment
---

{% embed https://www.youtube.com/live/04fcqC8Ghjc?t=4390s %}