小编And*_*lov的帖子

没有定义React类(text/babel)

我有commentBox.jsx文件,包含以下代码:

var CommentBox = React.createClass( {
  render: function () {
    return (
      <div className="commentBox">
        <h1>Comments</h1>
      </div>
    );
  }
});
Run Code Online (Sandbox Code Playgroud)

在index.html中,我想渲染此组件:

<div id="content"></div>
<script type="text/babel" src="scripts/commentBox.jsx"></script>

<script type="text/babel">
    ReactDOM.render(<CommentBox />, document.getElementById( 'content' ) );
</script>
Run Code Online (Sandbox Code Playgroud)

但我收到错误:"CommentBox未定义"; 为什么这不起作用?如果我将所有代码放在一个文件(commentBox.js) - 它将工作.

reactjs react-jsx babeljs

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

Angular2动态插入脚本标记

我从服务器内容到json对象字段,它是html <style></style><script></script>标签,我想这样执行它:

[innerHtml] ="content | sanitize",但<script></script>标签不执行.它可以使它工作吗?

我的消毒管看起来像这样:

import {Pipe} from '@angular/core';
import {DomSanitizationService} from '@angular/platform-browser';

@Pipe({
    name: 'sanitize',
    pure: true
})
export class Sanitize {
    constructor(private sanitizer: DomSanitizationService) {

    }

    transform(html: string) {

        return this.sanitizer.bypassSecurityTrustHtml(html);
    }
}
Run Code Online (Sandbox Code Playgroud)

我知道,DomSanitizationService中有bypassSecurityTrustScript函数,但我怎么能在我的情况下使用它呢?

html javascript angular2-services angular

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

Webpack 插件使用 asm 更改内容

问题

嗨,我正在尝试编写一个插件并使用 ast 来解析文件。但我无法对代码进行更改。例如,此代码不会将 div 更改为标签。更改 ast 的正确方法是什么?

    apply(compiler) {
      compiler.hooks.normalModuleFactory.tap('MyPlugin', (factory) => {
        factory.hooks.parser.for('javascript/auto').tap('MyPlugin', (parser, options) => {
          parser.hooks.program.tap('MyPlugin', (ast, comments) => {

            if (parser.state &&
                parser.state.module &&
                parser.state.module.resource.indexOf('node_modules') === -1) {

            if (parser.state.module.resource.endsWith('tsx')) {
                var g = ast.body.filter(n=> n.type === 'ExportNamedDeclaration');

            for (let a of g) {
              var decl = a.declaration.declarations;

              if (decl && decl[0]) {
                decl[0].init.body.body[0].argument.arguments[0].raw = 'label';
                decl[0].init.body.body[0].argument.arguments[0].value = 'label';
              }
            }
          }
        }
      });
    });
  });
}`
Run Code Online (Sandbox Code Playgroud)

我只需要在返回块中将 div 更改为标签或将 data-attr 添加到 div。我不想使用正则表达式并替换所有文件内容,我想用 ast 制作它。MyComponent.tsx …

javascript webpack webpack-4

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

实体框架级联删除 - FOREIGN KEY约束

我有以下型号的问题:

public class ProjectPage
{
    [Key]
    public Guid Id { get; set; }

    public Guid? HeaderId { get; set; }
    public ProjectPage Header { get; set; }

    public Guid? FooterId { get; set; }
    public ProjectPage Footer { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

在模型创建我有这个:

modelBuilder.Entity<ProjectPage>().HasOptional(p => p.Header).WithMany().HasForeignKey(p => p.HeaderId).WillCascadeOnDelete(true);
modelBuilder.Entity<ProjectPage>().HasOptional(p => p.Footer).WithMany().HasForeignKey(p => p.FooterId).WillCascadeOnDelete(true);
Run Code Online (Sandbox Code Playgroud)

但我无法更新数据库.我在Package Manager控制台中遇到以下错误:

在表'ProjectPages'上引入FOREIGN KEY约束'FK_dbo.ProjectPages_dbo.ProjectPages_FooterId'可能会导致循环或多个级联路径.指定ON DELETE NO ACTION或ON UPDATE NO ACTION,或修改其他FOREIGN KEY约束.

有人可以解释如何删除项目页面(可以是另一个项目页面中的页脚或页眉)?

c# entity-framework entity-framework-6

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

SQL异常:'Index'附近的语法不正确

我有SQL查询:

INSERT into ProjectFiles (Id,ProjectId,Index) VALUES (@Id,@ProjectId,@Index)
Run Code Online (Sandbox Code Playgroud)

但是当我尝试插入对象时,它会抛出异常:

"索引"附近的语法不正确.如果这是作为表提示的一部分,则现在需要A WITH关键字和括号.有关正确的语法,请参阅SQL Server联机丛书

我认为这是关于Index,因为sql有命令index.我怎么能对sql说,这是我的专栏?

c# sql sql-server asp.net-mvc

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