小编pQu*_*123的帖子

节点 writeFileSync 未写入文件

这是被破坏的命令:

fs.writeFileSync('Metadata.json', metadataString);
console.log("Metadata written.");
Run Code Online (Sandbox Code Playgroud)

我已经放置了一个断点并验证了metadataString实际上是一个字符串。控制台记录Metadata written得很好,文件保持为空......

不知道我还能检查什么...提前致谢。

javascript node.js

5
推荐指数
1
解决办法
7526
查看次数

Angular to Aurelia Transition - 一些基本问题

我们正在考虑将Aurelia用于新应用.我来自Angular 1背景(有一些暴露于Angular 2).Aurelia看起来相当不错,我真的很喜欢他们承担维护开发人员工作流程的责任.但是我有一些问题似乎无法找到答案:

1)有两种通用方法(据我所知),可以在页面中包含Web组件.这些是<compose>写一个自定义元素.我的问题是,来自Angular的重点是范围(即DOM中特定点的范围).我想知道什么是"范围"(即可用于绑定表达式)与compose和自定义元素.我的意思是,子模板中是否有父视图模型?如果是这样,子视图模型属性是否隐藏/隐藏父视图模型属性?

2)在Angular 2中,有关于数据如何传入和传出组件的指导原则.我们不应该更改绑定到组件的非基元(因为这会强制Angular 2的更改检测始终进入该组件分支以检查所有属性).

是否有任何指南/信息可以将数据传入和传出Aurelia中的组件?我的意思是从阅读中我已经完成它听起来像我将value.bind用于绑定到所有@bindable属性.那是对的吗?这些双向绑定是默认还是我必须明确声明value.two-way?更改双向绑定对象的属性有什么问题吗?

提前致谢

javascript angularjs aurelia aurelia-binding

5
推荐指数
1
解决办法
390
查看次数

在 angular ng-show 中使用类似 linq 的表达式

我有一系列交易:

var trades = [
    {
        orders: [
            {
                confirmed: true
            },
            {
                confirmed: false
            }
        ]
    }
]
Run Code Online (Sandbox Code Playgroud)

我想在我的指令表达式中使用类似 linq 的表达式(在本例中为 ng-hide):所以,类似于(警告:下面的混合 c#-angular 代码):

<div ng-repeat="trade in trades">
      <span ng-hide="trade.orders.any(order => !order.confirmed)">Confirmed</span>
</div>
Run Code Online (Sandbox Code Playgroud)

有没有办法编写.any(order => !order.confirmed)使用javascript?

提前致谢。

javascript c# linq angularjs

4
推荐指数
1
解决办法
1万
查看次数

gulp-if javascript文件但不在gulp-useref的特定目录中

我想对不在./src/components目录中的javascript文件运行minifaction.我试过这个:

    gulp.task('index', function () {
    var assets = useref.assets();

    return gulp.src('src/index.html')
        .pipe(assets)
        .pipe(gulpif('!./src/components/** && *.js', uglify()))
        .pipe(gulpif('*.css', minifyCss()))
        .pipe(assets.restore())
        .pipe(useref())
        .pipe(gulp.dest('dist'));
});
Run Code Online (Sandbox Code Playgroud)

但它似乎没有工作(即无论如何它在./src/components中对js文件进行缩小).

所有帮助表示赞赏.提前致谢.

javascript gulp

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

ASP MVC将对控制器的所有请求路由到Index操作?

我有一个包含客户端路由的公共页面。我希望将所有形式的url Public/*路由到PublicController/Index

我尝试了这个:

routes.MapRoute(
                name: "Public",
                url: "Public/{clientRoute}",
                defaults: new { controller = "Public", action = "Index", id = UrlParameter.Optional }
            );
Run Code Online (Sandbox Code Playgroud)

这适用于类型为url的形式,Public/someRoute但不适用于形式Public/someRoute/secondRoute或其他形式的url Public/someRoute/secondRoute/thirdRoute

asp.net asp.net-mvc

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

webpack-hot-middleware不是很热门的替代品

这是我的服务器代码:

if (process.env.NODE_ENV === 'development') {
        // Enable logger (morgan)
        app.use(morgan('dev'));

        // Disable views cache
        app.set('view cache', false);

        var webpack = require('webpack');
        var webpackDevMiddleware = require('webpack-dev-middleware');
        var webpackHotMiddleware = require('webpack-hot-middleware');

        var webpackConfig = require('../client/webpack.config');
        var compiler = webpack(webpackConfig);

        app.use(webpackDevMiddleware(compiler, { noInfo: true, publicPath: webpackConfig.output.publicPath }));
        app.use(webpackHotMiddleware(compiler));

    }
Run Code Online (Sandbox Code Playgroud)

这是我的webpack.config:

module.exports = {
  entry: {
    main: [
        'webpack-hot-middleware/client',
        './client/src/main'
    ]
  },
  output: {
    path: path.join(__dirname, 'client/build'),
    filename: 'bundle.js',
    publicPath: '/build/'
  },
  plugins: [
    new AureliaWebpackPlugin(),
    new webpack.optimize.OccurenceOrderPlugin(),
    new webpack.HotModuleReplacementPlugin(),
    new webpack.NoErrorsPlugin()
  ], …
Run Code Online (Sandbox Code Playgroud)

webpack

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

在docker build中没有这样的文件或目录

我是Docker的新手,正在尝试将应用程序移植到它上面。本质上,在启动时,该应用程序需要执行一些我封装在脚本中的与环境相关的工作。

我的应用看起来像

Dockerfile
scripts/run.sh
build-development/stuff
build-production/stuff
Run Code Online (Sandbox Code Playgroud)

这是我的Dockerfile:

FROM nginx
RUN chmod +x scripts/run.sh
CMD ["scripts/run.sh", APP_ENV]
EXPOSE 80
Run Code Online (Sandbox Code Playgroud)

这是脚本/ run.sh:

#!/bin/bash

mkdir dist

chmod -R 777 dist

if [ $1 == "development" ]
then
    cp -R build-development/. /usr/share/nginx/html
fi

if [ $1 == "stage" ]
then
    cp -R build-production/. /usr/share/nginx/html
    sed -i 's/production/stage/g' dist/index.html
fi

if [ $1 == "production" ]
then
    cp -R build-production/. /usr/share/nginx/html
fi
Run Code Online (Sandbox Code Playgroud)

我的想法是,我将像这样运行图像:

docker run -e APP_ENV=development app-name
Run Code Online (Sandbox Code Playgroud)

并将其输入脚本中,该脚本将复制正确的文件。

不幸的是,我从未运行过该映像,因为在构建步骤中:

docker build -t app-name . …
Run Code Online (Sandbox Code Playgroud)

docker

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

为什么我可以在javascript中声明之前返回一个函数?

为什么以下工作:

function outsideFunction() {
   return {
    insideFunction: insideFunction
}

function insideFunction() {
    ...stuff
}
}
Run Code Online (Sandbox Code Playgroud)

function insideFunction() {
    ...stuff
}
Run Code Online (Sandbox Code Playgroud)

同样的

var insideFunction = function() { ...stuff }
Run Code Online (Sandbox Code Playgroud)

哪会导致var insideFunction被提升到顶部?在对象声明中使用时不应该insideFunction返回undefined

我可以用对象做同样的事情吗?换句话说,我可以这样做:

return {objectName: objectName}
var objectName = {}
Run Code Online (Sandbox Code Playgroud)

javascript

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

c#创建一个不需要输入默认参数的方法

我意识到这可能是一个相当简单的问题.不过,这给了我麻烦.

我想创建一个方法,用户只需要提供许多参数之一.我认为这样做的方法是使用默认参数.但是,在过去,当我写这些时,我总是遇到以下问题:

如果我有一个方法:

public void methodName (int a = 1, int b = 2, int c = 3) {
...
}
Run Code Online (Sandbox Code Playgroud)

如果没有为a和b提供默认值,那么想要仅使用参数c的方法的人如何使用该方法?

我的意思是,如果用户调用这样的方法:

methodName(8)
Run Code Online (Sandbox Code Playgroud)

编译器会理解a = 8.看起来用户被迫提供参数,即使它们是默认值,如下所示:

methodName(1, 2, 8)
Run Code Online (Sandbox Code Playgroud)

现在,显然对于这个简单的例子我可以创建一个这样的方法:

public void methodName(List<int>) {
}
Run Code Online (Sandbox Code Playgroud)

然后用户只能提供列表中的第三个值.

如果我有很多类型的参数,我该怎么办?

提前致谢.

c#

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

ES6:如果rest参数是一个数组,会发生什么?

如果我有:

function foo(number, ...args) {
   //foo to add args to sum
}
Run Code Online (Sandbox Code Playgroud)

我希望调用者可以调用foo,如:

foo(10, 1, 2, 3); // 16
Run Code Online (Sandbox Code Playgroud)

要么:

foo(10, [1, 2, 3]); //16
Run Code Online (Sandbox Code Playgroud)

问题是如何实现这一点.我可以这样做:

function foo(number, ...args) {
    let toAddArr = Array.isArray(args[0]) ? args[0] : args;
    for (let toAdd of toAddArr) {
        number = number + toAdd;
    }
    return number;
}
Run Code Online (Sandbox Code Playgroud)

javascript ecmascript-6

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

AWS IAM 不允许 PutObject

这是我所做的:

1) 向 IAM 用户添加了以下策略:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": [
                "s3:*"
            ],
            "Resource": "arn:aws:s3:::bucket-name"
        }
    ] }
Run Code Online (Sandbox Code Playgroud)

2)我使用 aws-cli 作为该用户登录

3)运行以下命令:

aws s3 sync ./dist s3://bucket-name/ --delete
Run Code Online (Sandbox Code Playgroud)

我得到了一堆这样的:

调用 PutObject 操作时发生错误 (AccessDenied):拒绝访问

奇怪的是,这工作正常:

aws s3api list-objects --bucket bucket-name
Run Code Online (Sandbox Code Playgroud)

这意味着我的政策在某种程度上起作用了......

提前致谢

amazon-s3 amazon-web-services

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

比较没有存储在变量c#中

我有以下几行:

bool test88 = -1 == -1;
Run Code Online (Sandbox Code Playgroud)

但是,在visual studio中,当我在下一行放置一个换行符并检查我的locals窗口时,没有test88变量(当我将鼠标悬停在它上面时没有出现任何值)

为什么是这样?

c# visual-studio

0
推荐指数
1
解决办法
59
查看次数