Skip to content

Commit

Permalink
merge with latest docs/main(040888)
Browse files Browse the repository at this point in the history
  • Loading branch information
mahmudunnabikajal committed Jul 28, 2024
2 parents 34d6ff6 + 0408888 commit 9b363bf
Show file tree
Hide file tree
Showing 12 changed files with 205 additions and 106 deletions.
205 changes: 117 additions & 88 deletions pnpm-lock.yaml

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion src/about/community-guide.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ Vue-এর সম্প্রদায় অবিশ্বাস্যভা

বাগ ফিক্স বা নতুন বৈশিষ্ট্যগুলি অবদান রাখা হল সবচেয়ে সরাসরি অবদান যা আপনি করতে পারেন৷

Vue কোর রিপোজিটরি একটি [কন্ট্রিবিউটিং গাইড](https://github.com/vuejs/core/blob/main/.github/contributing.md) প্রদান করে, যাতে পুল অনুরোধের নির্দেশিকা এবং বিল্ড সেটআপ এবং উচ্চ-স্তরের আর্কিটেকচার সম্পর্কিত তথ্য রয়েছে . অন্যান্য সাব-প্রকল্পের সংগ্রহস্থলে এর নিজস্ব অবদানের নির্দেশিকাও থাকতে পারে - পুল অনুরোধ জমা দেওয়ার আগে দয়া করে সেগুলি পড়তে ভুলবেন না।
Vue কোর রিপোজিটরি একটি [কন্ট্রিবিউটিং গাইড](https://github.com/vuejs/core/blob/main/.github/contributing.md) প্রদান করে, যাতে পুল রিকোয়েস্ট নির্দেশিকা এবং বিল্ড সেটআপ এবং উচ্চ-স্তরের আর্কিটেকচার সম্পর্কিত তথ্য রয়েছে . অন্যান্য সাব-প্রকল্পের সংগ্রহস্থলে এর নিজস্ব অবদানের নির্দেশিকাও থাকতে পারে - পুল অনুরোধ জমা দেওয়ার আগে দয়া করে সেগুলি পড়তে ভুলবেন না।

বাগ সংশোধন যে কোনো সময় স্বাগত জানাই. নতুন বৈশিষ্ট্যগুলির জন্য, প্রথমে [RFC repo](https://github.com/vuejs/rfcs/discussions) এ ব্যবহারের ক্ষেত্রে এবং বাস্তবায়নের বিশদ আলোচনা করা ভাল।

Expand Down
7 changes: 4 additions & 3 deletions src/about/team/members-partner.json
Original file line number Diff line number Diff line change
Expand Up @@ -349,9 +349,10 @@
},
{
"name": "Erick Petrucelli",
"title": "Software Engineer & Architect, UX Specialist, Consultant, Educator, Writer",
"company": "Freelance",
"location": "João Pessoa, Brazil",
"title": "Lead Software Engineer, UI/UX Specialist, Manager, Teacher, Speaker, Writer",
"company": "LawnStarter",
"companyLink": "https://www.lawnstarter.com/",
"location": "Campinas, Brazil",
"languages": ["Portuguese", "English"],
"projects": [
{
Expand Down
19 changes: 19 additions & 0 deletions src/api/sfc-script-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -468,6 +468,25 @@ defineProps<{
</script>
```

একটি `রেফ`-এ জেনেরিক কম্পোনেন্টের রেফারেন্স ব্যবহার করার জন্য আপনাকে [`vue-component-type-helpers`](https://www.npmjs.com/package/vue-component-type-helpers) লাইব্রেরি `InstanceType` হিসাবে কাজ করবে না।

```vue
<script
setup
lang="ts"
>
import componentWithoutGenerics from '../component-without-generics.vue';
import genericComponent from '../generic-component.vue';
import type { ComponentExposed } from 'vue-component-type-helpers';
// Works for a component without generics
ref<InstanceType<typeof componentWithoutGenerics>>();
ref<ComponentExposed<typeof genericComponent>>();
```


## Restrictions {#restrictions}

- মডিউল এক্সিকিউশন শব্দার্থবিদ্যার পার্থক্যের কারণে, `<script setup>` এর ভিতরের কোড একটি SFC-এর প্রসঙ্গে নির্ভর করে। বাহ্যিক `.js` বা `.ts` ফাইলে সরানো হলে, এটি ডেভেলপার এবং টুল উভয়ের জন্যই বিভ্রান্তির কারণ হতে পারে। অতএব, **`<script setup>`** `src` অ্যাট্রিবিউটের সাথে ব্যবহার করা যাবে না।
Expand Down
2 changes: 1 addition & 1 deletion src/api/sfc-spec.md
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ p {{ msg }}
<script src="./script.js"></script>
```

সতর্ক থাকুন যে `src` ইম্পোর্টগুলি ওয়েবপ্যাক মডিউল অনুরোধের মতো একই পথ রেজোলিউশনের নিয়ম অনুসরণ করে, যার অর্থ:
সতর্ক থাকুন যে `src` ইম্পোর্টগুলি ওয়েবপ্যাক মডিউল রিকোয়েস্ট মতো একই পথ রেজোলিউশনের নিয়ম অনুসরণ করে, যার অর্থ:

- রিলিটিভ পাথগুলি `./` দিয়ে শুরু করতে হবে৷
- আপনি npm নির্ভরতা থেকে রিসোর্স ইম্পোর্ট করতে পারেন:
Expand Down
55 changes: 52 additions & 3 deletions src/ecosystem/themes/themes.json
Original file line number Diff line number Diff line change
Expand Up @@ -197,8 +197,8 @@
},
{
"name": "WrapPixel",
"description": "Check out developer friendly vue js admin dashboard templates built by our partners from [WrapPixel](https://wrappixel.com). Download them to start building your real time web application quickly to save hundreds of hours in development and design.",
"seeMoreUrl": "https://www.wrappixel.com/templates/category/vuejs-templates/",
"description": "Check out top [dashboard templates](https://www.wrappixel.com/templates/category/admin-dashboard-templates/?ref=320) built by our partners from [WrapPixel](https://www.wrappixel.com/?ref=320). Download highly customizable [Vue templates](https://www.wrappixel.com/templates/category/vuejs-templates/?ref=320) to start building your real time web application quickly to save hundreds of hours in development and design.",
"seeMoreUrl": "https://www.wrappixel.com/templates/category/vuejs-templates/?ref=320",
"products": [
{
"name": "Spike Free VueJs Admin Template",
Expand Down Expand Up @@ -341,5 +341,54 @@
"image": "https://cdn.themeselection.com/ts-assets/materio/materio-vuetify-nuxtjs-admin-template/banner/banner.png"
}
]
},
{
"name": "AdminMart",
"description": "Check out top [Vue dashboard templates](https://adminmart.com/templates/vuejs-admin/?ref=34) built by our partners from [AdminMart](https://adminmart.com/?ref=34). Download them to speed up your web development process and build top class web applications.",
"seeMoreUrl": "https://adminmart.com/templates/vuejs-admin/?ref=34",
"products": [
{
"name": "Matdash Free Vuejs Admin Dashboard",
"price": 0,
"description": "Free & Open Source VueJs Admin Template",
"url": "https://adminmart.com/product/matdash-free-vuejs-admin-dashboard/?ref=34",
"image": "https://adminmart.com/wp-content/uploads/2024/05/matdash-vuetifi-vuejs-2.png"
},
{
"name": "Matdash Vuejs Admin Dashboard",
"price": 49,
"description": "Empowering Developers with Unmatched Flexibility and Power",
"url": "https://adminmart.com/product/matdash-vuejs-admin-dashboard/?ref=34",
"image": "https://adminmart.com/wp-content/uploads/2024/05/matdash-vuetify-vuejs-admin-dashboard.png"
},
{
"name": "Modernize Vuetify 3 & Vue 3 Admin Dashboard",
"price": 49,
"description": "Developer Friendly & Most Powerful Vue Admin Dashboard Template",
"url": "https://adminmart.com/product/modernize-vuetify-vue-admin-dashboard/?ref=34",
"image": "https://adminmart.com/wp-content/uploads/2023/02/modernize-vuetify-admin-dashboard-min.png"
},
{
"name": "Modernize Free Vuetify + Vue js Admin Dashboard",
"price": 0,
"description": "Free & Open Source VueJs Admin Template",
"url": "https://adminmart.com/product/modernize-free-vuetify-vue-js-admin-dashboard/?ref=34",
"image": "https://adminmart.com/wp-content/uploads/2023/02/modernize-free-vuetify-admin-dashboard-am-min1.png"
},
{
"name": "Modernize Free NuxtJs Admin Dashboard Template",
"price": 0,
"description": "Free NuxtJs Dashboard Template",
"url": "https://adminmart.com/product/modernize-free-vuetify-vue-js-admin-dashboard/?ref=34",
"image": "https://adminmart.com/wp-content/uploads/2023/02/modernize-free-nuxt-admin-dashboard-am-min.png"
},
{
"name": "Modernize Nuxt Js Admin Dashboard",
"price": 49,
"description": "Rapidly Build Powerful Dashboards with NuxtJs - Vuetify: A Developer's Dream",
"url": "https://adminmart.com/product/modernize-nuxt-js-admin-dashboard/?ref=34",
"image": "https://adminmart.com/wp-content/uploads/2023/02/modernize-nuxt-js-admin-dashboard.png"
}
]
}
]
]
2 changes: 1 addition & 1 deletion src/examples/src/fetching-data/App/composition.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ const branches = ['main', 'v2-compat']
export default {
setup() {
const currentBranch = ref(branches[0])
const commits = ref(null)
const commits = ref([])

watchEffect(async () => {
// this effect will run immediately and then
Expand Down
2 changes: 1 addition & 1 deletion src/examples/src/fetching-data/App/options.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ export default {
data: () => ({
branches: ['main', 'v2-compat'],
currentBranch: 'main',
commits: null
commits: []
}),

created() {
Expand Down
4 changes: 2 additions & 2 deletions src/examples/src/fetching-data/App/template.html
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@ <h1>Latest Vue Core Commits</h1>
<label :for="branch">{{ branch }}</label>
</template>
<p>vuejs/vue@{{ currentBranch }}</p>
<ul>
<li v-for="{ html_url, sha, author, commit } in commits">
<ul v-if="commits.length > 0">
<li v-for="{ html_url, sha, author, commit } in commits" :key="sha">
<a :href="html_url" target="_blank" class="commit">{{ sha.slice(0, 7) }}</a>
- <span class="message">{{ truncate(commit.message) }}</span><br>
by <span class="author">
Expand Down
2 changes: 1 addition & 1 deletion src/guide/components/v-model.md
Original file line number Diff line number Diff line change
Expand Up @@ -224,7 +224,7 @@ const title = defineModel('title')
</template>
```

[চেষ্টা করুন](https://play.vuejs.org/#eNqFU9tu2zAM/RVBKOAWyGIM25PhFbugDxuwC7a+VX3wEiZ1K0uCRHkuDP/7SKlxk16BILbIQ/KcQ3mUn5xb9hFkJeuw8q3DU2XazlmP4vvtF0tvBgyKjbedKJblXozLCmWUgSHB17BpokYxKiPEaocKlRgPOk0Lzq8bbI5PMlYIDxi92Z2E+GvtzXmLGipR9G86uwYtGr+NHTeAoemc5tEMnfhBf/Sry1kBHRAI1SDQSYj66u3pON73FdNUlxRLuX12d9MqZNQHJecKJUVJ8Lqc+8qFfODGgYlPueK8dWTIRZHaF5fJCuhadumiiI5cgTy6uHxVUmtcxGwC3jomizCgkjlU9Y2OKZjZ5+jHVETRI556fDhyIY6gZylIXgMp4g4nufSxdgwrazbtdnkdrCHlSaCSvPhWg//psLUmKEn7z7OVbLS2/76lGPoISX2quYLVzRPx6zBwTMlfHgL4nmTMucwxp8/+/EjK5yTtMLLoF5K/IVgdmWOGfY5mTbT3cInt1/QptGZ7Hs4GBBN2ophounoJryStn+/Cc9Lv6b5bvt9dWTn9B6F1Lrs=)
[চেষ্টা করুন](https://play.vuejs.org/#eNqFklFPwjAUhf9K05dhgiyGNzJI1PCgCWqUx77McQeFrW3aOxxZ9t+9LTAXA/q2nnN6+t12Db83ZrSvgE944jIrDTIHWJmZULI02iJrmIWctSy3umQRRaPOWhweNX0pUHiyR3FP870UZkyoTCuH7FPr3VJiAWzqSwfR/rbUKyhYatdV6VugTktTQHQjVBIfeYiEFgikpwi0YizZ3M2aplfXtklMWvD6UKf+CfrUVPBuh+AspngSd718yH+hX7iS4xihjUZYQS4VLPwJgyiI/3FLZSrafzAeBqFG4jgxeuEqGTo6OZfr0dZpRVxNuFWeEa4swL4alEQm+IQFx3tpUeiv56ChrWB41rMNZLsL+tbVXhP8zYIDuyeQzkN6HyBWb88/XgJ3ZxJ95bH/MN/B6aLyjMfYQ6VWhN3LBdqn8FdJtV66eY2g3HkoD+qTbcgLTo/jX+ra6D+449E47BOq5e039mr+gA==)

যদি প্রপ বিকল্পগুলিরও প্রয়োজন হয়, সেগুলি মডেলের নামের পরে পাস করা উচিত:

Expand Down
9 changes: 5 additions & 4 deletions src/guide/scaling-up/ssr.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,9 +40,10 @@ SSR ব্যবহার করার সময় বিবেচনা কর

**Static Site Generation (SSG)**, যাকে প্রি-রেন্ডারিংও বলা হয়, দ্রুত ওয়েবসাইট তৈরির আরেকটি জনপ্রিয় কৌশল। যদি একটি পৃষ্ঠা সার্ভার-রেন্ডার করার জন্য প্রয়োজনীয় ডেটা প্রতিটি ব্যবহারকারীর জন্য একই হয়, তাহলে প্রতিবার অনুরোধ আসার সময় পৃষ্ঠাটি রেন্ডার করার পরিবর্তে, আমরা এটিকে শুধুমাত্র একবার, সময়ের আগে, বিল্ড প্রক্রিয়া চলাকালীন রেন্ডার করতে পারি। প্রি-রেন্ডার করা পৃষ্ঠাগুলি তৈরি হয় এবং স্ট্যাটিক HTML ফাইল হিসাবে পরিবেশন করা হয়।

SSG SSR অ্যাপের একই পারফরম্যান্স বৈশিষ্ট্য বজায় রাখে: এটি সময়-টু-কন্টেন্ট পারফরম্যান্স প্রদান করে। একই সময়ে, এসএসআর অ্যাপের তুলনায় এটি স্থাপন করা সস্তা এবং সহজ কারণ আউটপুটটি স্ট্যাটিক HTML এবং সম্পদ। এখানে কীওয়ার্ডটি হল **static**: SSG শুধুমাত্র স্ট্যাটিক ডেটা ব্যবহার করে এমন পৃষ্ঠাগুলিতে প্রয়োগ করা যেতে পারে, যেমন ডেটা যা বিল্ড টাইমে পরিচিত এবং ডিপ্লোয়ের মধ্যে পরিবর্তন হয় না। প্রতিবার ডেটা পরিবর্তিত হলে, একটি নতুন স্থাপনার প্রয়োজন হয়।
SSG একই কর্মক্ষমতা বৈশিষ্ট্য বজায় রাখে SSR অ্যাপের মতো: এটি টাইম-টু-কন্টেন্ট পারফরম্যান্স প্রদান করে। একই সময়ে, SSR অ্যাপের তুলনায় এটি ডেপ্লয় করা সহজ কারণ আউটপুটটি স্ট্যাটিক HTML এবং assets। এখানে কীওয়ার্ডটি হল **স্ট্যাটিক**: SSG শুধুমাত্র স্ট্যাটিক ডেটা প্রদানকারী পৃষ্ঠাগুলিতে প্রয়োগ করা যেতে পারে, যেমন ডেটা যা বিল্ড টাইমে পরিচিত এবং রিকোয়েস্ট মধ্যে পরিবর্তন করা যায় না। প্রতিবার ডেটা পরিবর্তিত হলে, একটি নতুন ডেপ্লয় প্রয়োজন হয়।

আপনি যদি শুধুমাত্র কিছু মার্কেটিং পৃষ্ঠার (যেমন `/`, `/about`, `/contact`, ইত্যাদি) SEO উন্নত করার জন্য SSR ব্যবহার করছেন, তাহলে আপনি সম্ভবত SSR-এর পরিবর্তে SSG চান। SSG বিষয়বস্তু-ভিত্তিক ওয়েবসাইট যেমন ডকুমেন্টেশন সাইট বা ব্লগের জন্যও দুর্দান্ত। আসলে, আপনি এই মুহূর্তে যে ওয়েবসাইটটি পড়ছেন সেটি স্ট্যাটিকভাবে তৈরি করা হয়েছে [VitePress](https://vitepress.dev/), একটি Vue-চালিত স্ট্যাটিক সাইট জেনারেটর ব্যবহার করে।

If you're onlyআপনি যদি শুধুমাত্র কিছু মার্কেটিং পৃষ্ঠার (যেমন `/`, `/about`, `/contact`, ইত্যাদি) এসইও উন্নত করার জন্য SSR investigating করছেন, তাহলে আপনি সম্ভবত SSR-এর পরিবর্তে SSG চান। SSG বিষয়অবজেক্ট-ভিত্তিক ওয়েবসাইট যেমন ডকুমেন্টেশন সাইট বা ব্লগের জন্যও দুর্দান্ত। আসলে, আপনি এই মুহূর্তে যে ওয়েবসাইটটি পড়ছেন সেটি স্ট্যাটিকভাবে তৈরি করা হয়েছে [VitePress](https://vitepress.dev/), একটি Vue-চালিত স্ট্যাটিক সাইট জেনারেটর ব্যবহার করে।
## Basic Tutorial {#basic-tutorial}

### Rendering an App {#rendering-an-app}
Expand All @@ -51,7 +52,7 @@ If you're onlyআপনি যদি শুধুমাত্র কিছু

1. একটি নতুন ডিরেক্টরি তৈরি করুন এবং এতে `cd` চালান
2. `npm init -y` চালান
3. `package.json`-এ `"type": "module"` যোগ করুন যাতে Node.js [ES মডিউল মোডে] চলে (https://nodejs.org/api/esm.html#modules-ecmascript-modules) )
3. `package.json`-এ `"type": "module"` যোগ করুন যাতে Node.js [ES modules mode](https://nodejs.org/api/esm.html#modules-ecmascript-modules) চলে
4. `npm install vue` চালান
5. একটি `example.js` ফাইল তৈরি করুন:

Expand Down Expand Up @@ -236,7 +237,7 @@ Vite বিল্ট-ইন [Vue সার্ভার-সাইড রেন্

### Reactivity on the Server {#reactivity-on-the-server}

এসএসআর চলাকালীন, প্রতিটি অনুরোধের URL আমাদের অ্যাপ্লিকেশনের একটি পছন্দসই অবস্থায় ম্যাপ করে। কোন ব্যবহারকারীর মিথস্ক্রিয়া নেই এবং কোন DOM আপডেট নেই, তাই সার্ভারে প্রতিক্রিয়াশীলতা অপ্রয়োজনীয়। ডিফল্টরূপে, ভালো কর্মক্ষমতার জন্য SSR চলাকালীন প্রতিক্রিয়া নিষ্ক্রিয় করা হয়।
এসএসআর চলাকালীন, প্রতিটি রিকোয়েস্ট URL আমাদের অ্যাপ্লিকেশনের একটি পছন্দসই অবস্থায় ম্যাপ করে। কোন ব্যবহারকারীর মিথস্ক্রিয়া নেই এবং কোন DOM আপডেট নেই, তাই সার্ভারে প্রতিক্রিয়াশীলতা অপ্রয়োজনীয়। ডিফল্টরূপে, ভালো কর্মক্ষমতার জন্য SSR চলাকালীন প্রতিক্রিয়া নিষ্ক্রিয় করা হয়।

### Component Lifecycle Hooks {#component-lifecycle-hooks}

Expand Down
Loading

0 comments on commit 9b363bf

Please sign in to comment.