require('url').parse('someurl.com/page')已弃用仅文档,并且我们严格的 linter 对此不满意......我试图在我们的代码中用互联网建议的new URL('someurl.com/page')内容替换它,这在大多数情况下有效。
但是,我们有一些示例,其中 url 是本地图像,some/image.png并且与 url.parse() 配合良好并返回:
Url {
protocol: null,
slashes: null,
auth: null,
host: null,
port: null,
hostname: null,
hash: null,
search: null,
query: null,
pathname: '/some/image.png',
path: '/some/image.png',
href: '/some/image.png'
}
Run Code Online (Sandbox Code Playgroud)
但是建议的替换new URL('some/image.png')会引发类型错误...
类型错误 [ERR_INVALID_URL] [ERR_INVALID_URL]:无效的 URL:/some/image.png
url.parse 正在做一些验证并接受本地路径,但新的 url 构造函数没有。该怎么办 ?
我正在做一个庞大的项目,从上周开始我更新了 mocha,现在我们收到警告:
弃用警告:通过 mocha.opts 的配置已弃用,并将从 Mocha 的未来版本中删除。改用 RC 文件或 package.json。
我想将选项迁移到 package.json 但没有好的迁移指南。GitHub 上所有有类似问题的帖子都回答“查看文档”。但是文档没有显示如何将一个选项从 mocha.opts 转移到 package.json,也没有关于它应该如何格式化的信息。我唯一能找到的是“spec”属性是文件运行的模式。对我来说,没有其他东西是隐含的。
我们的 mocha.opts 文件:
--reporter dot
--require test/mocha.main
--recursive src/**/*.test.js
--grep @slow --invert
Run Code Online (Sandbox Code Playgroud)
我的尝试不起作用:
"mocha": {
"reporter": "dot",
"require": "test/mocha.main",
"spec": "src/**/*.test.js",
"grep": "@slow --invert"
},
Run Code Online (Sandbox Code Playgroud)
请解释我应该如何格式化此配置块以实现与使用上述 mocha.opts 中的选项时相同的行为
我第一次尝试使用“Build App Bundle (Google Play)”编译我的项目。但是我得到了一个error while merging dex archives. 我相信这是由于我的一些插件使用了某些 amazon 模块的不同版本
控制台中打印的第一个错误:
D8: Program type already present: com.amazon.ags.BuildConfig
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
Run Code Online (Sandbox Code Playgroud)
当我搜索时,com.amazon.ags.BuildConfig我什么也没找到。(但我的假设可能是错误的)
我试图通过将 加入mainTemplate.gradle我的项目来启用 multiDex
defaultConfig {
minSdkVersion **MINSDKVERSION**
targetSdkVersion **TARGETSDKVERSION**
applicationId '**APPLICATIONID**'
multiDexEnabled true
ndk {
abiFilters **ABIFILTERS**
}
versionCode **VERSIONCODE**
versionName '**VERSIONNAME**'
}
Run Code Online (Sandbox Code Playgroud)
但是我仍然遇到同样的错误,我没有机会知道在构建时是否实际包含了新的 gradle 文件,或者 unity 是否只是忽略了它。
这是构建失败时弹出的错误:
java.lang.RuntimeException: java.lang.RuntimeException: com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives:
C:\Users\path-to-project\unity\Temp\gradleOut\build\intermediates\transforms\dexBuilder\release\57,
C:\Users\path-to-project\unity\Temp\gradleOut\build\intermediates\transforms\externalLibsDexMerger\release\0,
C:\Users\path-to-project\unity\Temp\gradleOut\build\intermediates\transforms\dexBuilder\release\52.jar,
C:\Users\path-to-project\unity\Temp\gradleOut\build\intermediates\transforms\dexBuilder\release\54.jar
UnityEngine.GUIUtility:ProcessEvent(Int32, IntPtr)
Run Code Online (Sandbox Code Playgroud)
我看到很多人最近通过删除统一广告和/或谷歌广告插件并重新启用它们来解决类似的错误,我从未使用过谷歌广告,但我尝试过删除统一广告插件,仍然没有雪茄,我也尝试过使用不同版本的统一广告插件,来自资产商店的插件和“内置扩展”仍然没有骰子。
我一直在与这里的一些人进行讨论,但我尝试了他们每个人提供的解决方案,但都没有运气。
关于如何找出导致此问题的插件以及如何修复它的任何建议?
在我的react native项目中,我最近安装了节点模块react-native-async-storage,因为我收到有关不赞成使用'react-native'并将其移至单个模块的本地包的警告。
安装后,@react-native-community/async-storage我的笑话测试失败了。
首先与以下 error: unexpected token at position 0
在文件中:
persistence.js
import AsyncStorage from '@react-native-community/async-storage';
storeData = async ({ key, value }) => {
try {
await AsyncStorage.setItem(key, value);
} catch (error) {
// Error saving data
}
}
retrieveData = async (key) => {
try {
const value = await AsyncStorage.getItem(key);
if (value !== null) {
// Our data is fetched successfully
return value;
}
} catch (error) {
// Error retrieving data
}
}
module.exports …Run Code Online (Sandbox Code Playgroud) 我有一个与 CORS 相关的问题(我认为),当我从邮递员发送登录帖子请求时,它成功了。当我尝试使用我的 angular 2 前端应用程序登录时,请求状态似乎是 200,但没有任何反应,并且在控制台中我收到一条奇怪的消息,我的 localhost:4200 不被允许,我该如何解决这个问题?
角度http方法
authenticateUser(user){
let headers = new Headers();
headers.append('Content-Type', 'application/json');
return this.http.post('http://localhost:3000/api/authenticate', user, {headers: headers})
.map(res => res.json());
}
Run Code Online (Sandbox Code Playgroud)
如果这是一个与快递相关的问题,这里是我的快递代码:
const express = require("express")
const bodyParser = require("body-parser")
const logger = require('morgan')
const api = require("./api/api")
const path = require('path')
const secret = require('./models/secrets')
const expressJWT = require('express-jwt')
const cors = require('cors');
const app = express()
app.set("json spaces", 2)
app.use(logger("dev"))
app.use(bodyParser.json())
app.use(bodyParser.urlencoded({ extended: false }))
app.use(expressJWT({secret: secret}).unless({path : ['/api/authenticate', …Run Code Online (Sandbox Code Playgroud) 我有一个像api一样的REST的MEAN堆栈应用程序.我有两种用户类型:用户和管理员.要签署用户并保持会话我使用jsonwebtoken jwt像这样(简化):
const jwt = require("jsonwebtoken");
//example user, normally compare pass, find user in db and return user
let user = { username: user.username, userType: user.userType };
const token = jwt.sign({ data: user }, secret, {
expiresIn: 604800 // 1 week
});
Run Code Online (Sandbox Code Playgroud)
为了保护我的快速路线,我这样做:
在此示例中,它是"获取用户"路由,允许管理员获取有关任何给定用户的信息."普通"用户只能获得有关他/她自己的信息,为什么我将请求的用户名与从令牌解码的用户名进行比较.
let decodeToken = function (token) {
let decoded;
try {
decoded = jwt.verify(token, secret);
} catch (e) {
console.log(e);
}
return decoded;
}
// Get one user - admin full access, user self-access
router.get('/getUser/:username', (req, res, …Run Code Online (Sandbox Code Playgroud) 我正在尝试从嘲笑中收到一些简单的json。
反应本机提取功能:
getMemberDomainList = async (name) => {
try {
let response = await fetch('https://5c9cc9ed3be4e30014a7d287.mockapi.io/api/domain', {
method: 'POST',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
},
});
let responseJson = await response.json();
return responseJson;
} catch (error) {
console.error(error);
}
}
Run Code Online (Sandbox Code Playgroud)
我已经在Windows上的Chrome中测试了该地址,它返回了预期的模拟数据。但是在我的android手机上调用该函数时,出现此错误

来自远程调试器的错误
...\node_modules\react-native\Libraries\Renderer\oss\ReactNativeRenderer-dev.js:2348 TypeError: Network request failed
at XMLHttpRequest.xhr.onerror (...\Libraries\Renderer\oss\ReactNativeRenderer-dev.js:4337)
at XMLHttpRequest.dispatchEvent (...\Libraries\Renderer\oss\ReactNativeRenderer-dev.js:10760)
at XMLHttpRequest.setReadyState (...\Libraries\Renderer\oss\ReactNativeRenderer-dev.js:10511)
at XMLHttpRequest.__didCompleteResponse (...\Libraries\Renderer\oss\ReactNativeRenderer-dev.js:10343)
at ...\Libraries\Renderer\oss\ReactNativeRenderer-dev.js:10449
at RCTDeviceEventEmitter.emit (...\Libraries\Components\DrawerAndroid\DrawerLayoutAndroid.android.js:11)
at MessageQueue.__callFunction (...\Libraries\ART\ReactNativeART.js:362)
at blob:http://localhost:8081/79251787-d190-4650-8040-23d091c08738:2334
at MessageQueue.__guard (...\Libraries\ART\ReactNativeART.js:312)
at MessageQueue.callFunctionReturnFlushedQueue (...\Libraries\ART\ReactNativeART.js:139)
Run Code Online (Sandbox Code Playgroud)
我还在我的应用程序中运行一个WebView,该WebView指向一个Web URL,它可以完美加载,因此我确定手机具有Internet许可和访问权限等。
我想控制开关组件的颜色,无论是在选中时还是在未选中时。默认情况下它是红色的。我希望“球形旋钮”在开关状态为黄色时为黄色,何时checked: true为灰色checked: false
我必须通过使用来实现样式,createMuiTheme并且ThemeProvider由于我的项目的性质,我不能直接在组件上使用类。
我试图在这里遵循他们自定义紫色旋钮的样式示例:https : //codesandbox.io/s/x8bz8 来源:https : //material-ui.com/components/switches/
不幸的是,我一直无法弄清楚如何在检查球时控制球的颜色(它总是回落到默认的红色)。我已经成功地在选中和未选中时设置了轨道的颜色,并且我还能够在未选中时设置球的颜色。有人可以帮我弄清楚如何在检查球时将颜色样式应用于球吗?
我制作了一个 CodeSandbox,我一直在搞乱:https ://codesandbox.io/s/material-demo-b6153
const theme = createMuiTheme({
overrides: {
MuiSwitch: {
switchBase: {
color: "#ccc", // this is working
"&$checked": { // this is not working
color: "#f2ff00"
}
},
track: { // this is working
opacity: 0.2,
backgroundColor: "#fff",
"$checked$checked + &": {
opacity: 0.7,
backgroundColor: "#fff"
}
}
}
}
});
return (
<ThemeProvider theme={theme}> …Run Code Online (Sandbox Code Playgroud) node.js ×4
javascript ×3
android ×2
react-native ×2
angular ×1
babel-jest ×1
build.gradle ×1
cors ×1
css ×1
express ×1
fetch ×1
gradle ×1
jestjs ×1
jwt ×1
material-ui ×1
mean-stack ×1
mocha.js ×1
reactjs ×1
rest ×1
security ×1
url ×1