我在ng2应用之间共享模块时遇到问题。这是一个非常简单的方案来演示该问题。一路使用angular-cli:
ng new SharedModule。ng new MyApp。ng serve,出现错误:
静态解析符号值时遇到错误。调用函数“ makeDecorator”,不支持函数调用。考虑使用对导出函数的引用替换函数或lambda ...
省略不重要的内容,非常基本的结构如下所示:
MyApp
|????angular-cli.json
|????package.json
|
???src
??app
|????app.module.ts
|????app-root.component.ts
??
SharedModule
|????angular-cli.json
|????package.json
|
??src
??app
|????app-root.component.ts
|????custom-input.component.ts
|????shared.module.ts
??
Run Code Online (Sandbox Code Playgroud)
这里的关键是MyApp和SharedModule是两个不同的应用程序。如果我尝试将共享模块放入MyApp中(以及导出的自定义组件中),那么它就可以正常工作。不幸的是,目前这不是一个选择,我必须将模块/应用程序分开。也不能从SharedModule创建一个npm软件包并将其安装到MyApp中。
我创建了一个github存储库来演示该问题。为了运行它:
npm install在MyApp和SharedModule文件夹中运行。npm start在MyApp文件夹中运行。百万美元的问题是我该如何进行这项工作?谢谢。
总的来说,我对机器学习非常陌生,尤其是 Microsoft ML.NET。我想做的是为文本分类创建一个可重新训练的模型。假设我有一篇文章(用于训练)和一篇文章预测(用于分类):
public class Article
{
public string Text { get; set; }
public string Topic { get; set; }
}
public class ArticlePrediction
{
public float[] Score { get; set; }
public uint PredictedLabel { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
根据可重新训练模型的文档和此 GitHub 问题,我得出结论,我将需要两个管道 - 准备管道和训练管道。并为“准备好的”数据创建一个单独的中间模型,以便进行重新训练:
public class ArticlePrepared : Article
{
[VectorType(???)]
public float[] Features { get; set; }
public uint Label { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
模型的实际训练是微不足道的:
public static void Train(MLContext ctx, IDataView data) …Run Code Online (Sandbox Code Playgroud) 目前我正在使用Typewriter从我的C#类自动生成TypeScript类.可以说我有这个非常简单的C#类:
[Dto]
public class MyDto
{
public string Prop1 { get; set; }
public string Prop2 { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
我也有这个简单的打字机模板:
$Classes(c => c.Attributes.Any(x => x.Name == "Dto"))[
export class $Name {
constructor(
$Properties[
public $name: string,
]
) { }
}]
Run Code Online (Sandbox Code Playgroud)
我对此模板的问题是在生成的ts类中的最后一个构造函数参数属性之后有一个尾随逗号:
export class MyDto {
constructor(
public prop1: string,
public prop2: string, /* <---- notice the comma here */
) { }
}
Run Code Online (Sandbox Code Playgroud)
我希望在TypeScript类中将C#类的属性生成为参数属性,但是上面的示例生成的TypeScript无效.有没有办法用打字机模板实现这一目标?