小编TYR*_*AEL的帖子

让Facebook的react.js库JSX语法与jslint很好地配合?

I am playing around with the Facebook's react.js library. I am trying to use their JSX syntax which describes creating a view in the following way.

/** @jsx React.DOM */
var HelloMessage = React.createClass({
  render: function() {
    return <div>{'Hello ' + this.props.name}</div>;
  }
});

React.renderComponent(<HelloMessage name="John" />, mountNode);
Run Code Online (Sandbox Code Playgroud)

JSLint obviously does not like this ("expected an identifier and instead saw ' <';" - JavaScript syntax error), so how do I get around this in my .jshintrc file?

javascript facebook jslint jshint reactjs

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

Moment.js从服务器设置基准时间

我一直在阅读文档,似乎找不到从服务器而不是客户端设置日期的方法?

例如像这样的东西

moment().set('server time')
Run Code Online (Sandbox Code Playgroud)

然后,moment()将根据服务器的时间返回Date对象,而不是来自客户端计算机的时间.

是否存在此功能,如果不存在,您将使用哪些推荐方法?现在我正在轮询服务器以获取服务器的时间,但是你可以想象这不是很有效.

更新代码示例和摘要

I am building an auction application. So server time is critical. For example if the user has tampered with their time settings or their time has been manually configured, the client might see an auction that has already ended, when in fact it still has a few minutes left. All time checks are obviously done on the server, but that is why I need the client and server to be in …

javascript date momentjs

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

Web Api 2.2与odata和$ expand

我正在使用codefirst和odata.我已经设置了我的模型和关系.该查询似乎成功运行.我只是在扩展嵌套数据时使用$ expand时遇到问题.我在微软的网站上关注了以下链接.所以我可以成功完成以下任务

http://myurl.com/odata/catagories?$expand=Product
Run Code Online (Sandbox Code Playgroud)

现在,如果我决定更深入地使用以下查询

http://myurl.com/odata/catagories?$expand=Product/Supplier
Run Code Online (Sandbox Code Playgroud)

我收到以下错误

URI中指定的查询无效.找到遍历多个导航属性的路径.请重新调整查询,使每个展开路径仅包含类型段和导航属性.

如果您访问上面的链接,评论中的某些人似乎遇到了同样的问题.我可以发誓我使用之前版本的odata和Web Api.

c# odata asp.net-mvc-4 asp.net-web-api

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

实体框架多次使用单个查询计数

很抱歉,如果有人询问过,但如何通过一次调用数据库来改进以下内容?

var statsModel = new
{
     Total = _db.Messages.Count(),
     Approved = _db.Messages.Count(x => x.Approved),
     Rejected = _db.Messages.Count(x => !x.Approved),
};
Run Code Online (Sandbox Code Playgroud)

c# entity-framework entity-framework-4 asp.net-mvc-3

10
推荐指数
2
解决办法
3876
查看次数

Coffeescript类比Backbone扩展更加膨胀

我刚刚开始学习Coffeescript,并且无法找到我应该使用的确切答案

class Model extends Backbone.Model
    urlRoot: '//some/url'
Run Code Online (Sandbox Code Playgroud)

编译成

Model = (function(_super) {
    __extends(Model, _super);

    function Model() {
        _ref = Model.__super__.constructor.apply(this, arguments);
        return _ref;
    }

    Model.prototype.urlRoot = '//some/url';

    return Model;

})(Backbone.Model);
Run Code Online (Sandbox Code Playgroud)

而不是

Model = Backbone.Model.extend
    urlRoot: '//some/url'
Run Code Online (Sandbox Code Playgroud)

编译成

var Model = Backbone.Model.extend({
    urlRoot: '//some/url'
});
Run Code Online (Sandbox Code Playgroud)

我问的主要原因是因为前者几乎用于我所看过的所有例子.但是,与后者相比,它在编译时会产生"更多"的膨胀.我确实读过这个问题,但答案似乎有所不同.

javascript coffeescript backbone.js

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

获取使用almond.js的RequireJS异步插件

我阅读下面的文章关于如何获取谷歌地图,并gmaps.js与RequireJS工作.但是,当我构建我的项目时,RequireJS与Almond交换.在上面的文章中,它指出Almond不能使用RequireJS异步插件.如果没有async插件,Google的依赖项就不会被加载,并会gmaps.js抛出错误.

有没有办法解决这个问题,仍然在使用Almond而不是RequireJS的项目中加载Google地图代码?

javascript google-maps requirejs almond

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

将主要网站转换为JavaScript应用程序

我很感激你的意见.我负责重建一个占据相当多流量的主要网站.截至过去几个月,我一直在使用Backbone.js来开发应用程序.我在过去几周一直在研究Backbone是否适合重新开发新网站.

我最初担心的是SEO.在这里发现了一篇很棒的文章,讨论了渐进增强和一堆帮助的stackoverflow问题.我似乎无法摆脱构建静态网站并使用Backbone增强静态网站的感觉,这需要花费更多时间.

现在我的问题是,如果我们没有通过我们必须建立必须使用禁用javascript的网站的阶段?我们的网站仍然可以用于屏幕阅读器等吗?

我的想法是将相关的元搜索信息从服务器提供到我的主app.html文件中,这样搜索引擎仍然可以抓取不同的网址.Backbone应用程序将从您访问的与该应用程序相关的任何URL启动.

我刚刚访问了新的hulu.com,似乎无法想出为什么不将网站重新开发成Backbone应用程序.大多数(如果不是所有)我访问过的网站都没有js就无法运行.通过禁用js转到hulu.com,您将能够看到我的意思.所以在结束时建立一个没有js就无法运行的网站是安全的,上述内容足以满足SEO吗?

谢谢

javascript seo backbone.js

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

Nodemon重启运行gulp任务

我的gulpfile中有以下代码

gulp.task('scripts', function () {
    gulp.src(paths.browserify)
        .pipe(browserify())
        .pipe(gulp.dest('./build/js'))
        .pipe(refresh(server));
});

gulp.task('lint', function () {
    gulp.src(paths.js)
        .pipe(jshint())
        .pipe(jshint.reporter(stylish));
});

gulp.task('nodemon', function () {
    nodemon({
        script: 'app.js'
    });
});
Run Code Online (Sandbox Code Playgroud)

我需要在Nodemon重启时运行脚本和lint任务.我有以下内容

gulp.task('nodemon', function () {
    nodemon({
        script: 'app.js'
    }).on('restart', function () {
        gulp.run(['scripts', 'lint']);
    });
});
Run Code Online (Sandbox Code Playgroud)

Gulp.run()现已弃用,那么我如何使用gulp和最佳实践来实现上述目标?

javascript node.js gulp

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

将ViewBag作为参数传递

如果我在Dynamic中有一个值ViewBag,为什么我不能将它传递给方法?所以为了简单起见,让我说我有ViewBag.SomeValue,并且我想传递ViewBag.SomeValue给HTML Helper.如果HTML帮助器接受动态变量,为什么不接受我的ViewBag.SomeValue

@Html.SimpleHelper(ViewBag.SomeValue)

public static string SimpleHelper(this HtmlHelper html, dynamic dynamicString)
{
    return string.Format("This is my dynamic string: {0}", dynamicString);
}
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc c#-4.0 asp.net-mvc-3

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

MVC Web API 5升级以获得CORS支持

我正在尝试使用Web API的CORS支持,并已安装RC1.我浪费了太多时间试图让CORS正常工作.无论如何,我已经启用夜间版本无济于事.我一直遇到以下问题,无法在网上任何地方找到解决方案.你需要2013 VS来玩MVC 5还是安装新东西?

Could not load type 'System.Web.Http.Hosting.IHostPrincipalService' from assembly 'System.Web.Http, Version=5.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35'.
Run Code Online (Sandbox Code Playgroud)

这是我的包文件

<?xml version="1.0" encoding="utf-8"?>
<packages>
  <package id="Antlr" version="3.4.1.9004" targetFramework="net45" />
  <package id="AutoMapper" version="3.0.0-ci1043" targetFramework="net45" />
  <package id="AutoMapper" version="3.0.0" targetFramework="net45" />
  <package id="EntityFramework" version="5.0.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.Cors" version="5.1.0-alpha1-131016" targetFramework="net45" />
  <package id="Microsoft.AspNet.Mvc" version="5.0.0-rc1" targetFramework="net45" />
  <package id="Microsoft.AspNet.Providers.Core" version="1.1" targetFramework="net45" />
  <package id="Microsoft.AspNet.Providers.LocalDB" version="1.1" targetFramework="net45" />
  <package id="Microsoft.AspNet.Razor" version="3.0.0-rc1" targetFramework="net45" />
  <package id="Microsoft.AspNet.Web.Optimization" version="1.0.0" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebApi" version="5.0.0-rc1" targetFramework="net45" />
  <package id="Microsoft.AspNet.WebApi.Client" version="5.1.0-alpha1-131016" targetFramework="net45" /> …
Run Code Online (Sandbox Code Playgroud)

c# asp.net-mvc asp.net-web-api asp.net-mvc-5

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

Web Api 2基本Auth通用主体未设置

我有以下代码来设置Generic Principal.

public class AuthenticationHandler: DelegatingHandler
{
    protected override System.Threading.Tasks.Task<HttpResponseMessage> SendAsync(HttpRequestMessage request,
                                                                                  CancellationToken cancellationToken)
    {
        var accessToken = request.Headers.Authorization;
        if (accessToken == null)
            return base.SendAsync(request, cancellationToken);

        // Catch an error with regards to the accessToken being invalid
        try
        {
            var formsAuthenticationTicket = FormsAuthentication.Decrypt(accessToken.Parameter);

            if (formsAuthenticationTicket == null)
                return base.SendAsync(request, cancellationToken);

            var data = formsAuthenticationTicket.UserData;
            var userData = JsonConvert.DeserializeObject<LoginRoleViewModel>(data);

            var identity = new GenericIdentity(userData.Id.ToString(), "Basic");

            var userRole = userData.Roles.ToArray();
            var principal = new GenericPrincipal(identity, userRole);
            Thread.CurrentPrincipal = principal;
            HttpContext.Current.User = principal; …
Run Code Online (Sandbox Code Playgroud)

c# authentication asp.net-web-api

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

Facebook IOS SDK登录按钮强制小文本

有没有办法强制Facebook登录按钮,使其显示"登录"而不是"使用Facebook登录"?以下是iPhone 6的外观

在此输入图像描述

以下是iPhone 6 Plus

在此输入图像描述

我简要地看了一下Github上的Facebook SDK,但未能找到解决方案.Facebook基本上会查看按钮的宽度,然后显示相应的文本.我不希望文本像iPhone 6 Plus上那样溢出.

ios facebook-ios-sdk swift

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

使用phantomjs抓取站点地图

我对phantomjs很新.很长时间以来,我一直在搞乱这些问题.我知道我错过了很简单的事情.我有以下sitemap.xml:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.sitemaps.org/schemas/sitemap/0.9 http://www.sitemaps.org/schemas/sitemap/0.9/sitemap.xsd">
  <url>
    <loc>/</loc>
    <changefreq>always</changefreq>
    <priority>1.0</priority>
  </url>
  <url>
    <loc>/vehicles</loc>
    <lastmod>2013-01-07</lastmod>
  </url>
</urlset>
Run Code Online (Sandbox Code Playgroud)

现在我要做的就是使用phantomjs从xml文档中获取url值.我有以下内容.

page.open("sitemap.xml", function(status) {
    if(status !== "success") {
        console.log("Unable to open sitemap.");
    } else {
        // Stuck here
        console.log(page.content);
    }
});
Run Code Online (Sandbox Code Playgroud)

xml文件的内容将正确打印到屏幕上,但是如何使用该文档来播放xml?我只需要能够获得每个url节点的第一个子节点.我尝试将xml文档解析为DOMParser,但这似乎不对.非常感谢您的帮助.

另外你如何调试phatomjs所以我可以看到它的全部荣耀的对象?例如,如果我在Dev Tools中控制一个对象,我可以展开它并查看键 - 值对.我猜终端不提供这种奢侈品?

javascript xml xml-parsing phantomjs

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