小编vas*_*vas的帖子

为什么我在此可选链中收到“对象可能是‘未定义’”?

我去那儿:

buyTicketData?.pricingOptions
Run Code Online (Sandbox Code Playgroud)

这个错误:

[tsl] ERROR in /Applications/MAMP/htdocs/wp-content/plugins/tikex/tikexModule/components/BuyTicket/PricingOptionInvoiceItemsFormFieldsCheckboxes.tsx(280,25)
      TS2532: Object is possibly 'undefined'.
Run Code Online (Sandbox Code Playgroud)

如果左侧?未定义,?则将其包裹起来,为什么这很重要?

以下是类型:

buyTicketData?: BuyTicketData;

export type BuyTicketData = {
  pricingOptions?: PricingOptions;
}

export type PricingOptions = {
  [optionId: string]: PricingOptionType;
};

export type PricingOptionType = {
  invoiceItems?: InvoiceItems;
};

export type InvoiceItems = {
  [invoiceItemId: string]: InvoiceItemData;
};

export type InvoiceItemData = {
  defaultValue?: number;
};
Run Code Online (Sandbox Code Playgroud)

无论如何,这就是整个表达式

buyTicketData?.pricingOptions
Run Code Online (Sandbox Code Playgroud)

好的,找到解决方案:

[tsl] ERROR in /Applications/MAMP/htdocs/wp-content/plugins/tikex/tikexModule/components/BuyTicket/PricingOptionInvoiceItemsFormFieldsCheckboxes.tsx(280,25)
      TS2532: Object is possibly 'undefined'.
Run Code Online (Sandbox Code Playgroud)

我只是不知道为什么?? ""需要这种丑陋的条件。

javascript typescript optional-chaining

2
推荐指数
1
解决办法
1065
查看次数

如何模拟糟糕的首次输入延迟(Web Core Vitals)分数?

我需要创建一个将生成错误的首次输入延迟 (FID) 值的网页。

如果您不知道,FID 是 Google Web Core Vitals 的一部分。

我想模拟错误的 FID,因为我正在测试一个网站扫描工具,该工具应该标记错误的 FID 值。因此,我想在网页上模拟一个错误值以确保它有效。

需要明确的是 - 我并不是想修复我的第一次输入延迟。我想创建一个故意给出错误的“首次输入延迟”值的网页。

但我不知道该怎么做。

我有一个 HTML 页面,带有<button id="button">Click Me</button>. 在<head>我添加了这个脚本:

<script type="module">
// Get the First Input Delay (FID) Score 
import {onFID} from 'https://unpkg.com/web-vitals@3/dist/web-vitals.attribution.js?module';

// Get the button element
const button = document.getElementById('button');

// Add a click event listener to the button
button.addEventListener('click', async () => {
  // Make a delay
  await new Promise((resolve) => setTimeout(resolve, 5000));
  // Print the FID score …
Run Code Online (Sandbox Code Playgroud)

javascript seo page-load-time web-vitals core-web-vitals

2
推荐指数
1
解决办法
504
查看次数

使用相对于当前脚本的路径访问文件?(节点.js)

我正在尝试启动位于正在运行的应用程序子目录中的视频 onclick。如果我提供整个路径,我可以轻松地做到这一点:“C:\Users\App”或其他任何内容,但希望能够指向视频,无论视频存储在哪里。如果用户将应用程序安装在文件夹中除了默认位置,视频会丢失。

'..\videos\video.mp4' 似乎不起作用?

javascript node.js

1
推荐指数
1
解决办法
1576
查看次数

如何检出不同的分支会导致新的未跟踪文件?

我遇到过两种对我来说没有意义的 Git 情况。

  1. 有些untracked文件只有在我们检出某个分支时才会显示。由于它们未被跟踪并且检出另一个分支仅将更改应用于工作目录,为什么它们在检出其他分支时消失?未跟踪的文件应该保持原样......
  2. 是否有任何情况git pull会创建未跟踪的文件?

git gitignore

1
推荐指数
1
解决办法
74
查看次数

如何创建向任何给定对象类型添加字段的自定义实用程序类型?

我正在尝试修改接口(或类型)以在某些情况下包含额外的字段,我看到的实现如下所示:

interface Person {
  name: string
}
const person: WithAge<Person> = {name: "Foo", age: 123 }
Run Code Online (Sandbox Code Playgroud)

我怎样才能重新创建这个?

typescript typescript-generics

1
推荐指数
1
解决办法
31
查看次数

当用户安装 TypeScript 模块时,如何使用 npm install 将其编译为 JS?

我构建了一个 TypeScript 模块并将其推送到 GitHub。我现在想在我的内部使用这个模块MyApp作为依赖项,它也是用 TypeScript 编写的。该包已在我的中注册MyApp/package.json

  "dependencies": {
    "foo": "github:organization-xyz/foo",
  }
Run Code Online (Sandbox Code Playgroud)

我添加了一个命令build-tsJavaScript在我的foo模块中创建相应的绑定foo/package.json

  "scripts": {
    "build-ts": "tsc"
    ...
  },
Run Code Online (Sandbox Code Playgroud)

当然,当我调用npm i主应用程序时,不会执行该命令。我如何正确准备我的模块foo才能将其成功导入到我的应用程序中?

node.js typescript npm-publish npm-install npm-scripts

0
推荐指数
1
解决办法
3543
查看次数