以下代码
function steamrollArray(arr) {
// I'm a steamroller, baby
return arr.flat();
}
steamrollArray([1, [2], [3, [[4]]]]);
Run Code Online (Sandbox Code Playgroud)
回报
arr.flat不是一个功能
我在Firefox和Chrome v67中尝试过,结果也是如此.
怎么了?
我试图搜索似乎整个互联网的内容,但我仍然对JS类的问题感到烦恼,我正在为微服务写作(仍在学习中).
所以,我尝试在实例化的对象上调用一个类方法,并根据我的知识和我的(我猜错的)单元测试它应该工作.
好吧,我将从收到的错误开始:
GET /api/users 500 2.863 ms - 2649
TypeError: Cannot read property 'repository' of undefined
at list (C:\Users\<user>\Documents\Programming\node\kaguwa-ngn\kaguwa-user-service\controllers\user-controller.js:20:9)
at Layer.handle [as handle_request] (C:\Users\<user>\Documents\Programming\node\kaguwa-ngn\kaguwa-user-service\node_modules\express\lib\router\layer.js:95:5)
at next (C:\Users\<user>\Documents\Programming\node\kaguwa-ngn\kaguwa-user-service\node_modules\express\lib\router\route.js:137:13)
Run Code Online (Sandbox Code Playgroud)
(还有更多).
代码调用代码:
user-controller.js
'use strict';
var utils = require('./utils');
class UserController {
constructor(repository) {
this.repository = repository || {};
}
/**
*
* Lists all users.
*
* @param {object} req
* @param {object} res
*/
list(req, res) {
this.repository.list(function (err, users) {
if (err) return res.status(500).json(utils.createError(500));
if (Object.keys(users).length !== 0) { …Run Code Online (Sandbox Code Playgroud) 当我们向npm发布一个包时,它会在搜索页面中显示一些数据,如流行度,质量和维护(示例图像是打击的).我只是想知道npm如何计算质量?真的很感激,如果有人能给出一些线索.
如果您在搜索页面上查看,可以看到此信息.查看搜索页面的右侧:npm搜索"react"
我了解您可以通过以下方式提供静态内容:
app.use(express.static(__dirname + "../../../public_html"));
Run Code Online (Sandbox Code Playgroud)
但是,我试图根据响应发送的"Accept"标题明确更改它提供的内容的表示.通常,我通过REST API以JSON格式请求我拥有的内容,因此url是:http://blah.com/this/that/item并且运行良好.
但是,我还希望用户能够从浏览器访问同一页面,这将通过以下内容发送:Accept:text/html并且由于该标题,请查看具有正确格式(CSS/JS/HTML /等)的页面以呈现相同的信息.
现在,我正试图通过以下方式提供内容:
if (req.accepts("text/html")) {
res.sendfile("/", {
root: "../../../public_html"
});
res.status(200);
return;
}
Run Code Online (Sandbox Code Playgroud)
凡public_html持有index.html与CSS和JS的相对目录.我不会在完成后发送该文件,但我认为这将是一个良好的开端,然后在我弄清楚如何基于Accept标头提供静态内容之后添加JSON内容.
有一个更好的方法吗?
当我在 jwt.io 中输入生成的令牌时,我总是得到无效的签名这是我制作令牌的代码
const secret = 'secret';
const token = jwt.sign({
username: user.username,
userID: user._id
},
secret, {
expiresIn: "1hr"
}
);
Run Code Online (Sandbox Code Playgroud)
我做错了什么?
我正在使用 jsonwebtoken 包。https://github.com/auth0/node-jsonwebtoken
我目前使用 ResizeObserver 来观察元素的大小,但我正在考虑使用节流阀(lodash 的节流阀)来提高它的性能。
const myResize = new ResizeObserver((entries) => {
const el = document.querySelector('#foo');
// get boundingRect and adjust height
});
let imageToWatch = document.querySelector('.image');
myResize.observe(imageToWatch);
Run Code Online (Sandbox Code Playgroud)
我有办法吗throttle?节流阀只是在内部逻辑上吗myResize?我想我无法限制observe这一部分。
我想在使用Leaflet MarkerCluster的同时为我的标记使用自定义图标.
我已经设法实现我的自定义图标,但现在标记弹出窗口不再工作了.
我的代码看起来像这样:
var markers1 = new L.MarkerClusterGroup();
// add markers with popup info
var geoJsonLayer1 = L.geoJson(Myplaces, {
onEachFeature: function(feature, layer) {
layer.bindPopup(feature.properties.Name);
}
})
// add markers with custom icons
var geoJsonLayer1 = L.geoJson(Myplaces, {
onEachFeature: onEachFeature,
pointToLayer: function(feature, latlng) {
var iconURL = feature.properties.img;
return new L.Marker(new L.LatLng(feature.geometry.coordinates[1], feature.geometry.coordinates[0]), {
icon: L.icon({
iconAnchor: [0, 0],
popupAnchor: [0, 0],
iconUrl: iconURL
})
});
}
})
// add markers to map
markers1.addLayer(geoJsonLayer1);
map.addLayer(markers1); …Run Code Online (Sandbox Code Playgroud) 我只是一个Spring Security的初学者,但我想知道的是有可能的方式,我可以使用配置keycloak @PreAuthorize,@PostAuthorize,@Secured和其他注释.例如,我keycloak-spring-security-adapter在我的简单Spring Rest webapp中配置了Spring Security,以便我可以访问控制器中的Principal对象,如下所示:
@RestController
public class TMSRestController {
@RequestMapping("/greeting")
public Greeting greeting(Principal principal, @RequestParam(value="name") String name) {
return new Greeting(String.format(template, name));
}
...
}
Run Code Online (Sandbox Code Playgroud)
但是当我尝试这个时(只是一个例子,实际上我想在授权之前执行自定义EL表达式):
@RestController
public class TMSRestController {
@RequestMapping("/greeting")
@PreAuthorize("hasRole('ADMIN')")
public Greeting greeting(Principal principal, @RequestParam(value="name") String name) {
return new Greeting(String.format(template, name));
}
...
}
Run Code Online (Sandbox Code Playgroud)
我得到例外:
org.springframework.security.authentication.AuthenticationCredentialsNotFoundException:在SecurityContext中找不到Authentication对象
在我的spring安全配置中,我启用了全局方法安全性:
我需要做什么才能使这个弹簧安全注释工作?是否可以在此上下文中使用此注释?
Codepen:https://codepen.io/frutality/pen/LQRGLv (请看它,因为某些原因插入此处的代码被切断)
<div id="app">
<v-app>
<v-navigation-drawer app fixed clipped v-model="drawer"></v-navigation-drawer>
<v-toolbar app dense absolute clipped-left dark color="primary">
<v-toolbar-title>
<v-toolbar-side-icon @click.stop="drawer = !drawer"></v-toolbar-side-icon>
<span class="hidden-xs-only">Logo</span>
</v-toolbar-title>
</v-toolbar>
<v-content>
<v-container fluid fill-height>
<v-layout>
<div>
<v-data-table :headers="headers" :items="titles" hide-actions disable-initial-sort class="elevation-1">
<template slot="items" slot-scope="props">
<td>
{{ props.item.title }}
</td>
<td>{{ props.item.type }}</td>
<td>{{ props.item.imdb_id }}</td>
<td>{{ props.item.is_adult }}</td>
<td>{{ props.item.start_year }}</td>
<td>{{ props.item.end_year }}</td>
<td>{{ props.item.duration }}</td>
<td>{{ props.item.genres_temp }}</td>
</template>
</v-data-table>
<div class="text-xs-right">
<v-btn color="primary" class=mr-0>Refresh</v-btn>
</div>
</div>
</v-layout>
</v-container> …Run Code Online (Sandbox Code Playgroud) 我不知道为什么会这样,但这真的很烦人。我希望根据Express 文档下载该文件。我有下一个代码:
//in react (App.js)
download = () => {
const { images, target } = this.state;
const filename = images.find(img => img.id === target).filename;
fetch('http://localhost:3001/download', {
method: 'post',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({filename})
})
}
//in express (server.js)
app.post('/download', (req, res) => {
var file = '../public/images/' + req.body.filename;
res.download(file, req.body.filename);
});
Run Code Online (Sandbox Code Playgroud)
文件夹结构:
-server
|-server.js
-public
|-images
|-a.jpg
|-b.jpg
-src
|-App.js
Run Code Online (Sandbox Code Playgroud)
什么也没发生,没有显示错误。有任何想法吗?