我有一个接口,它应该具有特定枚举键类型的键,但是当我声明该类型时,它会给出以下错误:
映射类型不能声明属性或方法。
这是代码:
enum myEnum {
propOne = 'propOne',
propTwo = 'propTwo'
}
export interface myInterface {
[key in myEnum]: anotherInterface;
}
Run Code Online (Sandbox Code Playgroud)
我尝试也像这样指定类型,但它不起作用并给了我语法错误:
export interface myInterface {
[key in keyof typeof myEnum]: anotherInterface;
}
Run Code Online (Sandbox Code Playgroud)
我还尝试使用普通对象而不是枚举,但它给出了相同的错误。
假设我有一个函数可以转换kebab-case为camelCase:
camelize("my-kebab-string") == 'myKebabString';
Run Code Online (Sandbox Code Playgroud)
我快到了,但我的代码也输出大写的第一个字母:
function camelize(str){
let arr = str.split('-');
let capital = arr.map(item=> item.charAt(0).toUpperCase() + item.slice(1).toLowerCase());
let capitalString = capital.join("");
console.log(capitalString);
}
camelize("my-kebab-string");
Run Code Online (Sandbox Code Playgroud) 我已将一些文件复制粘贴到我有 git 的目录中,当我运行命令时,git status它给了我这个错误消息。
BUG: refs/files-backend.c:465: returning non-zero -1, should have set myerr!\nOn branch main\nRun Code Online (Sandbox Code Playgroud)\n当我用 恢复所有内容时git restore .,该消息仍然存在。
我试图找到该错误的含义,但我还没有\xe2\x80\x99找到任何东西。
\n我想测量异步操作的持续时间,并为此设置标记。我在异步操作开始之前设置的第一个标记和在异步操作的回调中设置的带有测量的结束标记,如下所示:
performance.mark('async start');
someAsyncFunction(function callback() {
performance.mark('async end');
performance.measure('async operation', 'async start', 'async end');
});
Run Code Online (Sandbox Code Playgroud)
但它给了我这个错误:
未处理的拒绝(语法错误):无法对“性能”执行“测量”:“异步启动”标记不存在。
我试图找到类似的答案,但没有找到任何相关内容。
我想将 TypeScript 添加到我的项目中,但在向数组添加类型时遇到此错误:
SyntaxError:
my/path/of/file:
Const declarations require an initialization value (2:28)
1 | //keycodes of restricted characters for all our amount inputs
2 | export const restrictedChars: number[] = [ 43, 45, 69, 107, 109, 187, 188, 189, 190 ];
Run Code Online (Sandbox Code Playgroud)
这是代码:
//keycodes of restricted characters for all our amount inputs
export const restrictedChars: number[] = [ 43, 45, 69, 107, 109, 187, 188, 189, 190 ];
Run Code Online (Sandbox Code Playgroud)
我尝试声明数组并在导出后但没有成功。我还尝试为该数组创建一个接口,如某些此类问题的解决方案中提到的那样,但它也没有帮助。
webpack.config.js
const path = require("path");
const webpack = require("webpack");
module.exports = { …Run Code Online (Sandbox Code Playgroud) 到目前为止,我已经尝试过了,但是它返回了未过滤的数组:
function filterRangeInPlace(array, min, max) {
array = array.filter(item => (item >= min && item <= max));
console.log(array);
}
let arr = [5, 3, 8, 1];
filterRangeInPlace(arr, 1, 4);
console.log(arr);Run Code Online (Sandbox Code Playgroud)
我需要为过滤器创建一个函数,它必须有2个选择。
inBetween(a, b)-这将返回a和之间的数组binArray([...]) -将返回与过滤数组匹配的项目数组。像这样:
let arr = [1, 2, 3, 4, 5, 6, 7];
console.log( arr.filter(f(inBetween(3, 6))) ); // 3,4,5,6
console.log( arr.filter(f(inArray([1, 2, 10]))) ); // 1,2
Run Code Online (Sandbox Code Playgroud)
我试过这个功能:
function f(item) {
let result = [];
function inBetween(from, to){
if (item >= from && item <= to){
result.push(item);
}
}
function inArray(array){
if (array.indexOf(item) >= 0){
result.push(item);
}
}
return result;
}
Run Code Online (Sandbox Code Playgroud)
但我不知道如何将我的功能附加到filter。它给出了这个错误:
console.log(arr.filter(f(inBetween(3,6)))); // 3,4,5,6
ReferenceError:未定义inBetween
有可能吗?
我有一个带有嵌套对象的对象:
let list = {
value: 1,
next: {
value: 2,
next: {
value: 3,
next: {
value: 4,
next: null
}
}
}
};
Run Code Online (Sandbox Code Playgroud)
我需要返回所有key: value,list我必须使用递归。我试图将嵌套对象推送到函数中的局部变量,但在第二次迭代中失败,因为名称不同。
这是函数:
function printList(list){
let nested = {};
if(list.hasOwnProperty('next')) {
nested = list.next;
printList(nested);
} else {
return nested;
}
}
Run Code Online (Sandbox Code Playgroud)
有没有办法用递归解决它?
它应该返回value属性。在这种情况下
1
2
3
4
Run Code Online (Sandbox Code Playgroud) 我想要一种类型来检查该值是否为奇数。我试图找到一些东西,但我只找到硬编码的解决方案,例如odds: 1 | 3 | 5 | 7 | 9. 但我想知道是否有一种动态方法可以仅使用 Typescript 来完成此操作。
我知道例如在JS中我们可以用这个表达式找出数字是否为奇数x % 2 === 1。我想知道是否有一种方法可以使用这样的表达式来定义类型。
fontFamily不适labelStyle用于Input来自的组件的属性react-native-elements。我错过了什么?
我正在使用 react 16.8.6、react-native 0.60.4 和 react-native-elements 1.1.0。我一直在我的整个应用程序上使用这个字体系列 (Arciform),到目前为止它一直在工作。
样式表代码 - 文件定义库
export const definicoesBase = {
tamanhoFonteTextoComum : 16,
alturaLinhaTextoComum : 22,
fontFamilyTextoComum : 'Arciform',
corFonteTextoCabecalho : "#fff",
tamanhoFonteTextoCabelho: 20,
corFonteTextoComum : "#212121",
corFonteTextoAvaliacao : "#e7a74e",
fontWeightCabecalho:"bold",
backgroundGeral : "#fff",
backgroundAnuncio : "#FFF",
corBordaAnuncio : "#bdbdbd",
corBarraSlider : "#bdbdbd",
corBotaoSlider : "#0288d1",
backgroundCabecalho : "#0288d1",
};
Run Code Online (Sandbox Code Playgroud)
样式表代码 - 文件 StyleFaleConosco
import { StyleSheet } from "react-native";
import StyleBase, { definicoesBase } from …Run Code Online (Sandbox Code Playgroud) 我正在使用express它router来创建一个具有公共和私有路由的服务器。要访问私有路由,用户必须登录并发送JWT令牌。令牌很好,但我无法将用户重定向到私有路由。
const express = require('express');
const jwt = require('jsonwebtoken');
const authRouter = require('./auth');
const usersRouter = require('./users');
const router = express.Router();
router.use(authRouter);
const accessTokenSecret = '4-8-15-16-23-42';
const privateRoutes = ['/user'];
const checkPublicOrPrivate = (req, res, next) => {
privateRoutes.forEach(route => {
if (req.path.includes(route)) {
return authorization(req, res, next);
}
});
return next();
};
const authorization = (req, res, next) => {
const { token } = req.headers;
if (token) {
jwt.verify(token, accessTokenSecret, (err, user) …Run Code Online (Sandbox Code Playgroud) javascript ×9
arrays ×3
typescript ×3
filter ×2
asynchronous ×1
browser ×1
camelcasing ×1
closures ×1
enums ×1
express ×1
font-family ×1
git ×1
git-bash ×1
input ×1
jwt ×1
middleware ×1
node.js ×1
object ×1
performance ×1
react-native ×1
recursion ×1
string ×1