小编Mat*_*lho的帖子

NPM 始终使用 AWS Codeartifact

我的本地机器上有一些不同的项目。其中一些使用AWS Codeartifact下载AWS Codeartifact中的私有依赖项,而另一些则不使用。使用 AWS Codeartifact 的项目使用 Yarn 管理其依赖项,而我的不使用 AWS Codeartifact 的项目使用 NPM 管理其依赖项。

当我在 NPM 中运行一个简单的命令时,例如:

npm install nanoid
Run Code Online (Sandbox Code Playgroud)

npm 尝试连接到我的 AWS Codeartifact,但出现错误:

Unable to authenticate, need: Bearer realm="domain-npm-repo/npm-repo", Basic realm="domain-npm-repo/npm-repo"
Run Code Online (Sandbox Code Playgroud)

如何配置我的机器以仅将 AWS Codearticaft 用于我想要的项目?

其他配置:

我的机器是 Windows 10,我使用我的凭据在全局安装了 aws-sdk。

amazon-web-services npm yarnpkg aws-codeartifact

9
推荐指数
2
解决办法
4632
查看次数

React动态导入Svg文件

我的项目文件夹中有以下结构:

\n
src\n  |\n   -> assets\n     |\n      -> general-icons\n        |\n         pointer-arrow.svg\n  |\n   -> components\n     |\n      -> lazy-loader\n        |\n         LazyLoader.tsx\n
Run Code Online (Sandbox Code Playgroud)\n

LazyLoader 是一个功能性的 React 组件,我在其中动态导入一个组件,在本例中是一个 svg 文件

\n
import React from 'react';\n\nexport default function LazyLoader(path: string) {\n  return React.lazy(() => import(path));\n}\n
Run Code Online (Sandbox Code Playgroud)\n

'path' 属性是一个字符串,包含 svg 文件的相对路径:

\n
src/assets/general-icons/pointer-arrow.svg\n
Run Code Online (Sandbox Code Playgroud)\n

而pointer.svg是一个普通的svg:

\n
<svg version="1.1" width="24" height="24" viewBox="0 0 24 24">\n  <path d="M7.41,8.58L12,13.17L16.59,8.58L18,10L12,16L6,10L7.41,8.58Z" />\n</svg>\n
Run Code Online (Sandbox Code Playgroud)\n

当我调用 LazyLoader 组件并将路径作为参数传递时,它会给出错误,因为它找不到 svg 模块:

\n
Error: Cannot find module 'src/assets/general-icons/pointer-arrow.svg'\n
Run Code Online (Sandbox Code Playgroud)\n

有人知道\xc2\xb4s 发生了什么吗?

\n

javascript svg typescript reactjs

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