无法从模块“RootModule”

时间:2016-12-04 13:54:42

标签: typescript1.8 sharepoint-addin

我有sharepoint加载项项目,我在下面看到解决方案资源管理器的ss时已经包含了必要的angular2包和ts文件:

enter image description here

这是我的ts文件内容; boot.ts

import {bootstrap} from 'angular2/platform/browser';
import {AppComponent} from './app.component';
bootstrap(AppComponent)

app.component.ts

import {Welcome} from './app.module';
import {Component} from 'angular2/core';
@Component({
    selector: 'app-main',
    template:'<h1>${Welcome.getMessage()}</h1>'
})
export class AppComponent {}

app.module.ts

export class Welcome {
    static getMessage() {
        return "Hello World!";
    }
}

当我运行此应用程序时,我总是在输出窗口中收到此错误消息:

> @"Error 1
>         CorrelationId: ae2bcaba-cdac-4178-bd39-2aca278a2e31
>         ErrorDetail: There was a problem with activating the app web definition.
>         ErrorType: App
>         ErrorTypeName: App Related
>         ExceptionMessage: Failed to instantiate file "app.module.ts" from module "RootModule": Source path
> "Features\SharePointAddIn4_Feature1\app.module.ts" not found.
>         Source: AppWeb
>         SourceName: App Web Deployment

我有搜索,但无法找到任何解决方案帮助我..任何想法如何解决这个问题?

2 个答案:

答案 0 :(得分:1)

要解决此问题,我必须将tsconfig.json文件(和其他文件)设置为不部署,并将其从项目根目录中的Elements.xml中删除。

enter image description here

<?xml version="1.0" encoding="utf-8"?>
<Elements xmlns="http://schemas.microsoft.com/sharepoint/">
  <Module Name="RootModule">
  </Module>
</Elements>

答案 1 :(得分:0)

Hey Buddy在回答之前有几点要清楚

  • 你使用的是版本太旧的angular2可能是你在angular2 beta (正如您现在使用'angular2/core' '@angular/*'

  • 根据我使用的语法错误

    {Welcome.getMessage()}

有这样的语法

{{Welcome.getMessage()}}
  • 你也试图访问类Welcome,甚至没有在app.component.ts文件的构造函数中初始化,这是错误的。