Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: composition-api-setup.md translation #20

Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 8 additions & 8 deletions src/api/composition-api-setup.md
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ export default {

## Setup Context {#setup-context}

The second argument passed to the `setup` function is a **Setup Context** object. The context object exposes other values that may be useful inside `setup`:
`setup` ফাংশনে pass করা দ্বিতীয় আর্গুমেন্ট হল একটি **Setup Context** অবজেক্ট। প্রসঙ্গ অবজেক্টটি অন্যান্য ভ্যালু-গুলোকে প্রকাশ করে যা `setup` ভিতরে দরকারী হতে পারে:

```js
export default {
Expand All @@ -101,7 +101,7 @@ export default {
}
```

The context object is not reactive and can be safely destructured:
কন্টেক্সট অবজেক্টটি রিয়েক্টিভ নয় এবং নিরাপদে ডিস্ট্রাকচার করা যেতে পারে:

```js
export default {
Expand All @@ -111,11 +111,11 @@ export default {
}
```

`attrs` and `slots` are stateful objects that are always updated when the component itself is updated. This means you should avoid destructuring them and always reference properties as `attrs.x` or `slots.x`. Also note that, unlike `props`, the properties of `attrs` and `slots` are **not** reactive. If you intend to apply side effects based on changes to `attrs` or `slots`, you should do so inside an `onBeforeUpdate` lifecycle hook.
`attrs` এবং `slots` হল স্টেটফুল অবজেক্ট যেগুলো সবসময় আপডেট করা হয় যখন কম্পোনেন্ট নিজেই আপডেট করা হয়। এর অর্থ হল আপনার সেগুলিকে ডিস্ট্রাকচার করা এড়ানো উচিত এবং সর্বদা `attrs.x` বা `slots.x` হিসাবে বৈশিষ্ট্য উল্লেখ করা উচিত। এছাড়াও মনে রাখবেন, `প্রপস` এর বিপরীতে, `attrs` এবং `slots`-এর বৈশিষ্ট্য **not** রিয়েক্টিভ। আপনি যদি `attrs` বা `slots`-এ পরিবর্তনের উপর ভিত্তি করে পার্শ্বপ্রতিক্রিয়া প্রয়োগ করতে চান, তাহলে আপনার তা `onBeforeUpdate` লাইফসাইকেল হুকের মধ্যে করা উচিত।

### Exposing Public Properties {#exposing-public-properties}

`expose` is a function that can be used to explicitly limit the properties exposed when the component instance is accessed by a parent component via [template refs](/guide/essentials/template-refs#ref-on-component):
`expose` হল এমন একটি ফাংশন যা [template refs](/guide/essentials/template-refs#ref-on-component) এর মাধ্যমে কম্পোনেন্ট ইনস্ট্যান্সটি প্যারেন্ট কম্পোনেন্ট দ্বারা অ্যাক্সেস করা হলে উন্মুক্ত প্রোপার্টিগুলো স্পষ্টভাবে সীমাবদ্ধ করতে ব্যবহার করা যেতে পারে:

```js{5,10}
export default {
Expand All @@ -134,7 +134,7 @@ export default {

## Usage with Render Functions {#usage-with-render-functions}

`setup` can also return a [render function](/guide/extras/render-function) which can directly make use of the reactive state declared in the same scope:
`setup` একটি [render function](/guide/extras/render-function) রিটার্ন করতে পারে যা একই স্কোপে রিয়েক্টিভ স্টেট ডিক্লার এর সরাসরি ব্যবহার করতে পারে:

```js{6}
import { h, ref } from 'vue'
Expand All @@ -147,9 +147,9 @@ export default {
}
```

Returning a render function prevents us from returning anything else. Internally that shouldn't be a problem, but it can be problematic if we want to expose methods of this component to the parent component via template refs.
একটি রেন্ডার ফাংশন রিটার্ন দেওয়া আমাদের অন্য কিছু রিটার্ন দেওয়া থেকে বাধা দেয়। অভ্যন্তরীণভাবে এটি একটি সমস্যা হওয়া উচিত নয়, তবে এটি সমস্যাযুক্ত হতে পারে যদি আমরা এই কম্পোনেন্ট এর মেথডগুলোকে টেমপ্লেট রেফের মাধ্যমে প্যারেন্ট কম্পোনেন্ট কাছে প্রকাশ করতে চাই।

We can solve this problem by calling [`expose()`](#exposing-public-properties):
আমরা [`expose()`](#exposing-public-properties): কল করে এই সমস্যার সমাধান করতে পারি:

```js{8-10}
import { h, ref } from 'vue'
Expand All @@ -168,4 +168,4 @@ export default {
}
```

The `increment` method would then be available in the parent component via a template ref.
`increment` মেথডটি তখন একটি টেমপ্লেট রেফের মাধ্যমে প্যারেন্ট কম্পোনেন্টে অ্যাভেইলএবল হবে।