vue.js - چرا از getter برای توابعی که از Moment.js استفاده می‌کنند استفاده کنیم؟ (vueJS، تایپ‌اسکریپت)

weekOfMonth() این ماه و این هفته (هفته این ماه) را برمی‌گرداند

<template> <h3>{{ weekOfMonth }}</h3> </template> <script lang="ts"> export default class HomeView extends Vue { const moment = require("momen

ادامه مطلب →

تایپ‌اسکریپت - چگونه از شنونده رویداد اسکرول در Vue Nuxt TS برای یک دیو خاص استفاده کنیم

می‌دانم که این با nuxt js بسیار ممکن است. اما چگونه می‌توانیم این را با nuxt و ugly ts انجام دهیم؟ این کد را به اصطلاحات زبان اسکریپت ts تبدیل کنید اگر کسی بتواند این کار را انجام دهد. این غیرممکن است زیرا برای nuxt تقریباً هیچ محتوایی درباره گوش دادن به رویداد اسکرول روی یک div خاص وجود ندارد. نمونه: https://codepen.io/ash_0001/pen/NWMYaOw

new Vue({ el: '#app', data: { loading: false, nextItem: 1, items: [] }, mounted () { const listElm = docum

ادامه مطلب →

بارگذاری JSON با Typescript در Vue3 و Vite موفق نشد

من از Vue 2 به Vue 3 مهاجرت می‌کنم. اول یک اپ تستی انجام می‌دهم.

من در وارد کردن یک فایل JSON مشکل دارم.

فایل وجود دارد. همه این موارد را امتحان کردم:

import { sites } from "./data/sites.json"; import sites from "./data/sites.json"; import sites from "../data/sites.jso

ادامه مطلب →

جاوااسکریپت - متد VueJS تعریف نشده است

در پروژه Vue من، می‌خواهم چیزی را از GraphQL دریافت کرده و در یک متغیر ذخیره کنم. تابع به صورت async است و مقدار rawID باید منتظر بماند. از آنجایی که واضح است این می‌تواند منجر به undefined شود، "generateID" شکایت می‌کند که مقدار آن تعریف نشده است. من یک توسعه‌دهنده بومی TS هستم و در TS فقط این را به عنوان چیزی یا undefined تایپ می‌کنم، اما در JS این کار جواب ن

ادامه مطلب →

جاوااسکریپت - Vue Provide & Inject هنگام بارگذاری کامپوننت تعریف‌نشده

وضعیت

من در تلاش هستم از API گزینه‌ها برای قابلیت‌های Provide & Inject در Vue استفاده کنم، به طوری که کامپوننت header.vue بتواند داده‌ها را به کامپوننت container-nav.vue ارائه دهد (ساختار سلسله‌مراتبی کامپوننت را ببینید). با این حال، وقتی داده‌ها تزریق م

ادامه مطلب →

تایپ‌اسکریپت - ویژگی‌های متقابلاً انحصاری در Vue3

ایجاد یک کامپوننت که یا json با jsonParserRules یا jsonUrl با jsonParserRulesUrl را بپذیرد، اما نه هر دو. روش صحیح برای رسیدن به این هدف چیست؟ ایده‌آل خواهد بود اگر IDE از این بررسی پشتیبانی کند و در صورت مشخص شدن هر دو پراپ، هشدار مناسبی نمایش دهد.

نمونه غیر کاری

&

ادامه مطلب →

راه پیشنهادی برای انجام یک تماس gRPC از داخل یک کامپوننت Typescript Vue.Js چیست؟

بعد از خواندن مستندات grpc متوجه شدم که فایل‌های proto می‌توانند Node (جاوااسکریپت)، تایپ‌اسکریپت با پلاگین grpc_tools_node_protoc_ts و grpc-web تولید کنند. از آنجایی که عملکرد در مورد من بحرانی نیست، می‌توانم فایل‌های .proto را با proto-loader بارگذاری کنم. مزایای استفاده از هر یک از این سه روش برای مورد من چیست و شما چه پیشنهادی دارید؟

من سعی کردم از تولیدکننده پیش‌فرض Node جاوااسکریپت استفاده کنم اما در کار کردن با Vue.Js به مشکل خوردم، وقتی منابع بسته را با آخرین نسخه grpc-js ("@grp

ادامه مطلب →

typescript - Vue 3 - TS - Vuetify 3.1.2 نوع 'boolean' قابل انتساب به نوع 'never' نیست

من در حال توسعه یک برنامه با استفاده از Vue 3 (3.2.45)، Typescript (4.9.4) و Vuetify (3.1.2) هستم.

بسیاری از کامپوننت‌های Vuetify نیاز دارند که شما props منتقل کنید که مواردی مانند سبک پیش‌فرض، مکان یا برخی از v-model ها برای نمایش/مخفی کردن کامپوننت را مشخص می‌کنند. گاهی اوقات، هر زمان که من prop را (طبق مستندات آن‌ها) منتقل می‌کنم، کامپایلر خطای زیر را به من می‌دهد:

Type 'boolean' is not

ادامه مطلب →

تایپ‌اسکریپت - Vue3 - چگونه خارج از کامپوننت‌ها با کوکی‌ها کار کنیم؟

من نیاز دارم از کوکی‌ها برای ذخیره توکن دسترسی کاربر وارد شده در Vue 3 استفاده کنم. برای انجام این کار، از بسته npm 'vue-cookies' استفاده می‌کنم.

این به‌طور بی‌نقص داخل کامپوننت‌ها کار می‌کند - اما من باید کوکی‌ها را خارج از کامپوننت‌ها دریافت کنم.

این فایل main.ts من در پروژه Vue 3 من است:

ادامه مطلب →

جاوااسکریپت - چگونه یک پنجره مودال در Vue3 را از یک کامپوننت دیگر با PrimeVue ببندیم

من در تلاش هستم یک کامپوننت دیالوگ ایجاد کنم و آن را در یک کامپوننت دیگر استفاده کنم. وقتی روی دکمه کلیک می‌کنم، دیالوگ باز می‌شود، اما نمی‌دانم چگونه آن را ببندم. اینها کامپوننت‌ها هستند:

گفت‌وگو :

<template> <Dialog header="###" :

ادامه مطلب →