小编fra*_*eco的帖子

ES6中的Javascript`eval()`范围

我正在一个Foo1名为的实例上动态创建一个函数test.我正在使用创建此功能eval.我希望这个函数可以访问Foo2类,但是我得到了一个ReferenceError: Foo2 is not defined.

我已经解决了这个问题,Babel可以在这里找到

如果您想自己运行示例代码,请从此处下载并按照README.MD重现中的说明进行操作.

跑步:

npm install
npm run start
naviage to localhost:8080

以下是我的环境中的Minimal,Complete和Verifiable示例的目录结构:

root
  - src
    - Foo1.js
    - Foo2.js
  - .babelrc
  - app.js
  - package.json
Run Code Online (Sandbox Code Playgroud)

Foo1.js

import Foo2 from './Foo2.js';

export default class Foo1 {
    constructor() {
        // Isolate the impact of eval within makeFunction
        let makeFunction = text => {
            return eval("(function() { " + text …
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6

7
推荐指数
1
解决办法
4249
查看次数

Node 应用程序无法读取 Docker 映像中的文件系统

好吧,我有一个节点应用程序,可以访问其文件结构中的目录并对其进行处理。我正在使用“fs”模块来完成此任务。当我从其映像运行容器时,出现以下错误:

Error: ENOENT, readdir './classes/cs395'
Run Code Online (Sandbox Code Playgroud)

我立即想到了一大堆可能会出错的事情,直到我附加到正在运行的容器(重新启动它之后,因为容器会因错误而死亡......当然)。当我从容器内部启动节点应用程序时..它工作了..没有错误。

我相信这可能与 docker 镜像分层时处理文件系统的方式有关,但是当我附加到容器时它工作正常时我变得非常困惑

编辑:

该文件确实存在......这是证明: 在此输入图像描述 再次,如果(如图所示我连接到容器)我运行node server.js并 ping ip:port 一切都很好!目录已识别!但如果与图像分离运行则不然。

为了表明该文件仍然存在,让我们启动已停止的容器并附加到它......正如您所看到的,该文件仍然存在。(请注意,启动容器不会重新创建停止时不存在的文件......它只会从停止的地方开始) 在此输入图像描述

如果有帮助,以下是我使用“fs”模块的方式:

var p = "./classes/cs395";

//READ ALL FILES FROM A DIRECTORY AND EMIT THE NAME OF THE FILE
fs.readdir(p, function(err, files){
    if (err) throw err;

    files.forEach(function (file) {
        if (files.length == 1 && file == '.DS_Store'){
            io.emit('receive_file', null);
        } else {
            fs.stat(p + '/' + file, function(err, stats){
                if (err) throw err;

                if (stats.isFile() && file != '.DS_Store'){
                    var ext = …
Run Code Online (Sandbox Code Playgroud)

node.js docker dockerfile

5
推荐指数
2
解决办法
7019
查看次数

NPM权限被拒绝退出状态126

我在运行vagrant时正在运行节点进程,并且在ELIFECYCLE运行以下命令时遇到(权限被拒绝...退出状态126)错误:

NODE_ENV=production ./node_modules/babel-cli/bin/babel-node.js ./index.js

babel-node.js文件具有-rw-rw-r--
./index.js文件具有-rw-rw-r--

本地一切正常(不是无所事事)

另外,我在无业游民的虚拟机中使用CentOS映像

我尝试过的事情: 这篇文章建议做一个,chmod +x file.js但是没有用

unix centos node.js npm vagrant

5
推荐指数
0
解决办法
2050
查看次数

在 Go 中返回 JSON

如何在不将其编码为字符串的情况下从 golang 取回 JSON?我正在使用这个项目在 python 中包装 go 代码,以便我可以在 AWS lambda 函数中执行它。

我的问题是,我是返回 json.Marshal(obj)还是string(json.Marshal(obj))获取 base64 编码的 json 或字符串表示(例如"{\"bar\": \"foo\"}")。如果您使用 AWS API 网关,这不是一个合适的响应,因为它期望纯 json,就像您在 Node.js 中返回 json 对象一样。

这是我的代码:

package main

import "C"

import (
  "encoding/json"
  "github.com/eawsy/aws-lambda-go-core/service/lambda/runtime"
)

type Response struct {
  StatusCode  int       `json:"statusCode"`
  Headers     map[string]string  `json:"headers"`
  Body        string    `json:"body"`
}

func Handle(evt json.RawMessage, ctx *runtime.Context) (interface{}, error) {
  res := &Response{
    StatusCode: 1,
    Headers: map[string]string{"Content-Type": "application/json"},
    Body: "Hello World",
  }
  content, _ := …
Run Code Online (Sandbox Code Playgroud)

lambda go amazon-web-services

3
推荐指数
1
解决办法
9438
查看次数

Go Gorilla Mux"匹配任何东西"路径模板

创建简单的"匹配任何东西"处理程序的正确语法是什么?

mux.NewRouter().StrictSlash(true).Path("/")....

上面的代码似乎严格匹配/,/foo不会匹配

go gorilla

3
推荐指数
2
解决办法
2674
查看次数

Lua CJSON测试是否为空

cjson用来解码以下JSON。我要测试的情况下,items参数为null。我很难找到符合此情况的条件。这很奇怪,因为它似乎不是字符串,而不是nil,但stil具有真实值。

{
  "kind": "ServiceList",
  "apiVersion": "v1",
  "metadata": {
    "selfLink": "/api/v1/services",
    "resourceVersion": "47316"
  },
  "items": null
}
Run Code Online (Sandbox Code Playgroud)

这是我尝试过的条件:

if jsonServices.items == "null" then

if jsonServices.items == null then

if not jsonServices.items then

if jsonServices.items == nil

lua

2
推荐指数
1
解决办法
908
查看次数