我在从特定的 Uint8Array 转换为字符串并返回时遇到问题。我正在浏览器和 Chrome 中工作,它们本身支持 TextEncoder/TextDecoder 模块。
\n\n如果我从一个简单的案例开始,一切似乎都很顺利:
\n\n\nconst uintArray = new TextEncoder().encode(\'silly face demons\');\n// Uint8Array(17) [115, 105, 108, 108, 121, 32, 102, 97, 99, 101, 32, 100, 101, 109, 111, 110, 115] \nnew TextDecoder().decode(uintArray); // silly face demons\n
但下面的案例并没有给我我期望的结果。在不涉及太多细节(与密码学相关)的情况下,让我们从以下事实开始:我提供了以下 Uint8Array:
\n\nUint8Array(24) [58, 226, 7, 102, 202, 238, 58, 234, 217, 17, 189, 208, 46, 34, 254, 4, 76, 249, 169, 101, 112, 102, 140, 208]
我想做的是将其转换为字符串,然后将字符串解密回原始数组,但我得到了:
\n\n\nconst uintArray = new Uint8Array([58, 226, 7, …
这是我迄今为止尝试过的。我想得到一个12.34:
BigInt('12340000000000000000') / BigInt('1000000000000000000')
12n
Number(BigInt('12340000000000000000') / BigInt('1000000000000000000'))
12
FWIW,当我使用 JSBI 库时,它的工作方式是我想要的:
JSBI.BigInt('12340000000000000000') / JSBI.BigInt('1000000000000000000');
12.34
这在本地是不可能的吗?
这是我的文件夹结构:
-- src
---- components
------ App.js
------ App.scss
---- img
------ icon-gear.png
---- styles
------ base.scss
Run Code Online (Sandbox Code Playgroud)
以下是我的组件(App.js)的相关部分:
import './App.scss';
class App extends Component {
Run Code Online (Sandbox Code Playgroud)
以下是我的 Sass 文件 (App.scss) 的相关部分:
@import '../styles/base.scss';
.App {
.App-btnSettings {
background-image: url('../img/icon-gear.png');
}
}
Run Code Online (Sandbox Code Playgroud)
我这辈子都做不到正确的图标齿轮图像路径。
当我使用../img/icon-gear.png它炸弹时:
找不到模块:无法解析“/Users/rob/develop/openbazaar/openbazaar-web/src/styles/components”中的“../img/icon-gear.png”
当我使用../../img/icon-gear.png它炸弹时:
./src/components/App.scss... 您试图导入位于项目 src/ 目录之外的 ../../img/icon-gear.png。不支持 src/ 之外的相对导入。
图像路径应该相对于什么根路径?我认为这是src/components因为这就是这个 sass 文件所在的地方,也是我@import '../styles/base.scss'在文件顶部进行导入 ( ) 的地方。但是......这不起作用(上面的第一个错误)。
两个不同的错误消息之间似乎也有不同的基本路径。