创建 NativeScript 和 Angular 应用程序模板时出现挂钩问题

Issue with hooks when creating a NativeScript and Angular app template

我正在尝试创建一个新模板,用于使用 Angular 2 创建新的 NativeScript 应用程序,非常类似于 https://github.com/NativeScript/template-hello-world-ng

问题是:无论出于何种原因,在我使用模板创建新应用程序后,我最终得到两个 hooks 文件夹——一个在根文件夹中,一个在 app/ 中。根 hooks 很酷,但是当我尝试 运行 我从模板创建的应用程序时 app/hooks/before-livesync/nativescript-angular-sync.js 会导致 TypeScript 问题。

所以这是我的问题:为什么 app/hooks 存在?当我使用 tns create test --ng(使用 https://github.com/NativeScript/template-hello-world-ng)创建应用程序时,它不会。我在下面包括了我正在使用的完整 package.json。任何帮助将不胜感激。

{
  "name": "tns-template-tutorial-ng",
  "version": "1.0.0",
  "description": "A template for the NativeScript & Angular tutorial on nativescript.org",
  "repository": {
    "type": "git",
    "url": "https://github.com/nativescript/tns-template-tutorial-ng.git"
  },
  "keywords": [
    "NativeScript"
  ],
  "author": "Telerik <support@telerik.com>",
  "license": "Apache-2.0",
  "bugs": {
    "url": "https://github.com/nativescript/tns-template-tutorial-ng/issues"
  },
  "homepage": "https://github.com/nativescript/tns-template-tutorial-ng/groceries",
  "dependencies": {
    "@angular/common": "2.1.2",
    "@angular/compiler": "2.1.2",
    "@angular/core": "2.1.2",
    "@angular/http": "2.1.2",
    "@angular/platform-browser": "2.1.2",
    "@angular/platform-browser-dynamic": "2.1.2",
    "@angular/platform-server": "2.1.2",
    "@angular/router": "3.1.2",
    "nativescript-angular": "1.1.2",
    "reflect-metadata": "0.1.8",
    "rxjs": "5.0.0-beta.12",
    "tns-core-modules": "2.4.2"
  },
  "devDependencies": {
    "nativescript-dev-typescript": "^0.3.2",
    "nativescript-dev-android-snapshot": "^0.*.*",
    "typescript": "^2.0.10",
    "zone.js": "0.6.21"
  }
}

这是因为 TNS 命令在提取模板时的行为方式会第二次(不正确地)应用某些操作。

请参阅 https://github.com/NativeScript/theme/issues/95 的顶部部分以了解对该问题的讨论。不幸的是,这个问题被关于 removing/leaving post 安装脚本的讨论掩盖了。但实际的潜在问题是因为 TNS 在安装模板期间做了一些奇怪的事情,这破坏了事情。