小编T.J*_*der的帖子

使用knockout.js和moment.js时的日期无效

我将Knockout与moment.js和C#结合使用.在C#中,我使用以下命令传递ISO格式的日期:var jsonString = JsonConvert.SerializeObject(dataObject},new IsoDateTimeConverter());

在我的HTML文件中,我正在执行以下操作以格式化方式显示我的日期:

<script type="text/javascript">
var viewModel = {};
$.getJSON("http://www.test.com/jsonfile.txt", function(data) { 
viewModel.model = ko.mapping.fromJS(data);
ko.applyBindings(viewModel);
});
</script>
<div>Hello</div>
<div>Time: <span data-bind="text: moment(model.Time).format('L')"></span></div>
Run Code Online (Sandbox Code Playgroud)

我总是得到无效的日期,但当我使用时:

<div>Time: <span data-bind="text: model.Time"></span></div>
Run Code Online (Sandbox Code Playgroud)

它只是正确显示时间:2014-08-25T09:49:00

谁知道我做错了什么?

javascript knockout.js momentjs

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

每当我开始使用vim时,它都认为我按下了'd'.我该如何阻止这种行为?

每当我打开vim时,我按下的第一个键就会删除.它认为'd'已被按下,所以如果我输入'j'它会删除前两行,如果我按'G'它将删除所有内容.我检查了我的.vimrc,并通过有选择地评论出来的部分,它似乎是这一行:

nnoremap <C-[> gT
Run Code Online (Sandbox Code Playgroud)

......但我不明白这会导致它......?

vim

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

访问JavaScript对象的不存在的属性时如何抛出错误

当我尝试访问不存在的对象属性时,JavaScript中是否有任何方法可以抛出错误?

inst.prop //Error
Run Code Online (Sandbox Code Playgroud)

javascript

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

如何重构"使用"语句以避免代码重复?

假设我有以下方法:

 public string GetSchedules(string request)
    {
        using (var soapClient = new ServiceReference1.CustomDataTimetableToolKitServicesSoapClient(EndpointConfiguratioName, Endpoint))
        {
            return soapClient.GetSchedules(AuthenticationInfo, request);
        }
    }

    public string GetCountryList(string request)
    {
        using (var soapClient = new ServiceReference1.CustomDataTimetableToolKitServicesSoapClient(EndpointConfiguratioName, Endpoint))
        {
            return soapClient.GetCountryList(AuthenticationInfo, request);
        }
    }

    public string GetCarriers(string request)
    {
        using (var soapClient = new ServiceReference1.CustomDataTimetableToolKitServicesSoapClient(EndpointConfiguratioName, Endpoint))
        {
            return soapClient.GetCarriers(AuthenticationInfo, request);
        }
    }
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,唯一不同的是调用方法的名称.我怎么能重构这些方法只应用"using"语句一次并避免代码重复?

c# wcf refactoring using-statement

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

确定两个元素之间的关系

假设我有以下 DOM 元素:

<div>test</div>
<div>test</div>
Run Code Online (Sandbox Code Playgroud)

假设我有对每个 div 的引用,但没有对它们的集合的引用。有什么方法可以确定它们之间的关系吗?例如,如果我有div1and div2,有什么方法可以判断是div1之前还是之后(或内部,或者其他什么)div2

我知道我可以使用

var elements = document.querySelectorAll('div');
Run Code Online (Sandbox Code Playgroud)

...然后当然elements[0]是之前elements[1]。但是,如果我没有这些元素的集合,只有单独的引用,有什么方法可以判断吗?

javascript

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

带闭包的 JavaScript 垃圾收集

什么时候可以o回收垃圾?我假设完成后setTimeout回调?

var o = {
    foo() {
        setTimeout(function() {}, 10000);
    }
};

o.foo();
o = null;
Run Code Online (Sandbox Code Playgroud)

和这个?

var o = {
    bar: 0
};

o.foo = function() {
    setTimeout(function() { o.bar; }, 10000);
}

o.foo(); // Sorry missed this important bit.
o = null;
Run Code Online (Sandbox Code Playgroud)

javascript

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

如何处理多个空值?

假设我有一个SOA.现在我进行服务调用,我得到一个对象,它将嵌套对象作为字段.让我们说:

class A {
 B b;
}
class B {
  C c;
}
class C {
  D d;
}
Run Code Online (Sandbox Code Playgroud)

现在,如果我需要访问来自D类的字段,当我将对象作为服务调用的响应时,我需要执行:

if(a == null || a.getB() == null || a.getB().getC() == null || a.getB().getC().getD() == null) {
  throw someexception();
}
Run Code Online (Sandbox Code Playgroud)

是否有一种优雅的方式来处理相同的谓词?

java if-statement

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

async/await函数不等待setTimeout完成

我正在异步函数中使用等待按特定顺序执行函数,如果你看到这里 - 我想startAnim等到hideMoveUI完成执行后才能执行自己.

虽然我的控制台日志返回:

startAnim
hideMoveUI
Run Code Online (Sandbox Code Playgroud)

我的代码:

async function printAll() {
  await hideMoveUI();
  await startAnim();
}
printAll();

hideMoveUI = () => {
    setTimeout(() => {
      console.log('hideMoveUI');
    }, 3000);
  }

startAnim =() => {
    setTimeout(() => {
      console.log('startAnim');
    }, 500);
  }
Run Code Online (Sandbox Code Playgroud)

setTimeout一种async功能?

如何使第二个功能等待第一个功能完成?任何帮助或建议表示赞赏.先感谢您.

javascript asynchronous async-await ecmascript-2017

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

React.js setState不起作用

我是React中的一个菜鸟,并尝试为用户输入数字的水相制作一个简单的应用程序,然后根据它应该显示水的状态的值,例如,如果他输入212它应该说气体和12它应该说实话,但由于某种原因它没有正确显示值,任何帮助非常感谢!!!

class App extends React.Component {

    constructor(props) {
        super(props);
        this.state = {
            msg: "liquid",
            temp: 0
        };
        this.handlenum1Change = this.handlenum1Change.bind(this);
    }

    handlenum1Change(evt) {
        console.log(evt.target.value);
        this.setState({
            temp: Number(evt.target.value)
        });

        let temp = this.state.temp
        if (temp > 100) {
            this.setState({
                msg: "boiling"
            })
        } else if (temp < 32) {
            this.setState({
                msg: "frozen"
            })
        } else {
            this.setState({
                msg: "liquid"
            })
        }
    }

    render() {
        return (
            <div>
                <h1> {this.state.msg} </h1>
                <form className="form-inline">
                    <div className="form-group">
                        <label> Temp: </label>
                        <input type="number"  onChange={this.handlenum1Change} className="form-control" …
Run Code Online (Sandbox Code Playgroud)

javascript reactjs

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

为什么我的异步函数返回得太快?

我正在尝试使用异步函数来调用另一个函数内的函数。它看起来像这样:

const getConnectionsWithEmailsHash = async () => {
    const connectionsWithEmails = await parseConnections('./tmp/connections.csv') 
    console.log(connectionsWithEmails)
    return connectionsWithEmails
}

const connectionsWithEmailsHash = getConnectionsWithEmailsHash()
console.log(connectionsWithEmailsHash) 
Run Code Online (Sandbox Code Playgroud)

当我在异步函数中使用 console.log() 时,我得到了我期望的哈希值,但是当我在 console.log() 中调用异步函数的结果时,我得到了未决的承诺。我虽然异步函数的重点是它在调用时等待承诺得到解决,所以我做错了什么?

javascript node.js async-await

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