小编Cal*_*aNN的帖子

如何在Angular中动态加载外部脚本?

我有这个模块,它将外部库与其他逻辑组件化,而无需将<script>标记直接添加到index.html中:

import 'http://external.com/path/file.js'
//import '../js/file.js'

@Component({
    selector: 'my-app',
    template: `
        <script src="http://iknow.com/this/does/not/work/either/file.js"></script>
        <div>Template</div>`
})
export class MyAppComponent {...}
Run Code Online (Sandbox Code Playgroud)

我注意到importES6规范是静态的,并且在TypeScript转换过程中而不是在运行时解析.

无论如何要使它可配置,以便file.js将从CDN或本地文件夹加载?如何告诉Angular 2动态加载脚本?

javascript typescript ecmascript-6 angular

116
推荐指数
11
解决办法
14万
查看次数

将外部CSS样式加载到Angular 2 Component中

import {Component} from 'angular2/core';

@Component({
    selector: 'my-app',
    template: '<div></div>',
    styleUrls: [
        'http://example.com/external.css',
        'app/local.css'
    ]
})
export class AppComponent {}
Run Code Online (Sandbox Code Playgroud)

在external.css不加载.有没有办法在Angular 2组件中加载外部css?

angular

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

为什么在MVC 4应用程序中InitializeSimpleMembershipAttribute

我认为我的理解SimpleMembershipProvider几乎是60%,其余的是了解内部如何运作.

[InitializeSimpleMembership]仅在AccountController(默认模板)中使用过滤器时,您可以快速找到一些问题.我想你在任何地方使用Memberhsip API,或者WebMatrix.WebSecurity你需要确保首先调用这个过滤器.

后来,如果你用User.IsInRole我的_Layout.cshtml.您需要将过滤器应用于所有控制器,然后开始全局注册.

但是我只是意识到LazyInitializer.EnsureInitialized每个应用程序启动时只执行一次初始化.

那么为什么SimpleMembershipInitializer(在过滤器中)不直接在Application_Start中呢?有没有理由使用过滤器?

asp.net-mvc asp.net-mvc-4 simplemembership

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

字符串插值与格式变量

我可以做这个:

var log = string.Format("URL: {0}", url);
Run Code Online (Sandbox Code Playgroud)

或者甚至喜欢这个

var format = "URL: {0}";
...
var log = string.Format(format, url);
Run Code Online (Sandbox Code Playgroud)

我在format其他地方定义并使用format变量,而不是内联字符串.

在C#6中,这似乎是不可能的:

var format = $"URL: {url}"; // Error url does not exist
...
var url = "http://google.com";
...
var log = $format; // The way to evaluate string interpolation here
Run Code Online (Sandbox Code Playgroud)

无论如何使用字符串插值与先前声明的变量?

C#6似乎在编译期间内联字符串内联.但是,请考虑使用此功能进行本地化,在config中定义格式或仅const在类中使用格式.

c# c#-6.0

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

浏览器自动完成/保存的表单在ajax请求中不起作用

很难在搜索引擎中搜索关键字的任意组合,因为大多数热门开发者使用它需要ajax自定义自动完成.

大多数开发人员搜索自定义自动完成以从ajax获取db的结果,或者由于安全原因如何禁用浏览器自动完成,或者他们想要使用其他自动完成扩展程序.

但是我不是在谈论自动完成.我发现简单的普通浏览器自动完成或浏览器保存的形式IE或FF,在填写文本框中的文本时将作为下拉列表的最近选择.

在登录表单中填写用户名和密码等表单非常简单.提交表单后(表单数据发布)浏览器将保存自动完成或FF中的事件将要求保存密码.

现在,考虑通过ajax提交的登录.表单数据不会由IE或FF自动保存,因为表单不是通过post方法发送的.我很确定这是因为ajax vs post方法.

像DotNetNuke这样的CMS使用这种方式,我很难输入用户名和密码进行5用户登录以进行开发,事件我想让用户在浏览器中保存自己的表单数据而不需要任何自定义或扩展程序.通过另一个示例,用户可以查看和使用相同的电子邮件来填充跨网站或域的任何电子邮件表单.

如何解决这个问题?您有没有建议哪些关键字更适合搜索?

CallMeLaNN

browser forms ajax post autocomplete

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

从局部视图添加对html head标记的脚本引用

如何注入脚本标记,如

<script src="somejsfile"></script>
Run Code Online (Sandbox Code Playgroud)

要么

<script type="text/javascript>some javascript</script>
Run Code Online (Sandbox Code Playgroud)

从局部视图进入页面的head标签?


更新:旧问题的答案这是关于ASP.NET MVC.我们可以使用RenderSection.这里使用Razor视图引擎的MVC 3示例:

布局视图或母版页:

<html>
  <head>
  <script ...></script>
  <link .../>
  @RenderSection("head")
  </head>
  <body>
  ...
  @RenderBody()
  ...
  </body>
</html>
Run Code Online (Sandbox Code Playgroud)

查看,例如主页:

@section head{
  <!-- Here is what you can inject the header -->
  <script ...></script>
  @MyClass.GenerateMoreScript()
}
<!-- Here is your home html where the @RenderBody() located in the layout. -->
Run Code Online (Sandbox Code Playgroud)

asp.net-mvc partial-views

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

使用SSL的mongodump和mongorestore

获得mongodump和mongorestore使用安全性非常麻烦.

我有运行的mongodv3.4.1 .它是在我的Windows上运行的VirtualBox docker机器的IP地址.它仅用于测试原因.requireSSL192.168.99.100

实例已配置为使用TLS/SSL服务器和客户端使用相同的CA签名.我使用mongodCommon Name 的IP地址来允许主机名验证.身份验证已启用以接受我的客户端证书.

一切正常.我可以像这样连接到它:

mongo --ssl --host 192.168.99.100 --sslCAFile rootCA.pem --sslPEMKeyFile me.pem
Run Code Online (Sandbox Code Playgroud)

但现在我不能同时兼顾mongodump和mongorestore工作:

mongodump --ssl --host 192.168.99.100 --sslCAFile rootCA.pem --sslPEMKeyFile me.pem -d olddb
mongorestore --ssl --host 192.168.99.100 --sslCAFile rootCA.pem --sslPEMKeyFile me.pem -d newdb --dir=dump/olddb
Run Code Online (Sandbox Code Playgroud)

两者都返回此错误:

2017-01-13T04:28:03.881+0800    Failed: error connecting to db server: no reachable servers, openssl error: Host validation error
Run Code Online (Sandbox Code Playgroud)

我一直试图关闭客户端证书,使用用户名/密码,但仍然无法正常工作.我需要删除SSL才能使其正常工作.

这意味着我只能preferSSL在生产中使用. 如果我坚持下去,就无法在localhost中绕过SSL requireSSL.

有人得到同样的错误?这是一个已知的问题吗?

ssl mongodb mongodump

8
推荐指数
2
解决办法
4389
查看次数

如何在ASP.NET 5中使用HttpRequestMessage.CreateResponse <HttpError>()

我有空的Web API项目以及使用VS2015创建的完整MVC项目.我注意到HttpRequestMessage是System.Net.Http,那很好,但不是为CreateResponse以下:

此代码来自我的异常记录器中间件,它也从先前的Web API 2返回格式化的json.

var resp = request.CreateResponse<HttpError>(HttpStatusCode.InternalServerError, new HttpError("Internal Server Error. Reference: " + guid), config);
Run Code Online (Sandbox Code Playgroud)

我很努力找出CreateResponse扩展方法,在理应获得System.Net.Http.HttpRequestMessageExtensions以及HttpError类.两者都是先前的 Microsoft.AspNet.WebApi.Core包装.

在查看ASP.NET 5代码之后,我相信它只适用于Microsoft.AspNet.Mvc.WebApiCompatShim.但是它不包含在MVC示例项目中.

问题:

什么是WebApiCompatShim包,我可以在项目中安全地使用它吗?

什么是正确的方式CreateResponse从HttpRequestMessage?

更新

这WebApiCompatShimWebSite表明WebApiCompatShim是

获取Web API 2.*喜欢的行为

所以似乎只是出于兼容性目的.我必须重组代码.现在我发现MVC没有任何消息处理程序功能,似乎自定义中间件是要走的路.

c# asp.net asp.net-web-api asp.net-core

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

如何在Eclipse中使用PhoneGap Build和PhoneGap Android项目中的相同源代码

任何人都可能会注意到,Eclipse中的PhoneGap Build和PhoneGap开发存在差异.我想开发基于PhoneGap Build来支持Android和iPhone.但是要在Android中进行调试,我需要设置与PhoneGap Build不同的Eclipse项目.

例如,index.html位于Build中的根目录,而它位于Eclipse中的asset/www中.Build中有一个config.xml,我需要在Android的AndroidManifest.xml中配置它.

我如何使用相同的源来开发PhoneGap Build,而我可以在Android中调试它,我的朋友可以在iPhone中调试?有用的文件夹结构?我想放入相同的SVN/GIT仓库,我不想复制index.html,css,img,js文件.

eclipse android cross-platform adt cordova

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

jqPlot - 如何更改负色

我使用jqPlot绘制一个区域图与系列默认fill: true, fillToZero: true与useNegativeColors默认true.我可以改变color,fillColor但我没有找到一种方法如何改变线条颜色或填充零x轴线以下的颜色.我想要一个带绿色和负值红色的正值.目前负值默认为蓝色.这是jqPlot选项:

var chartOptions = {
    title: { show: false },
    axesDefaults: {
        show: false,
        showGridline: false,
        borderWidth: 0,
        showTicks: false,
        showTickMarks: false,
        tickOptions: {
            show: false,
            showLabel: false,
            showMark: false,
            showGridline: false
        }
    },
    axes: {
        xaxis: { min: 0, max: 10 },
        yaxis: { min: -5, max: 5 }
    },
    seriesDefaults: {
        fill: true,
        fillToZero: true, …
Run Code Online (Sandbox Code Playgroud)

javascript jquery jqplot

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