angularjs - 引用 angular 1.5 时无效的 'reference' 指令语法错误

标签 angularjs typescript visual-studio-code

昨天已经升级到Typescript 2.0.3,更新引用路径为

/// <reference types="angular" />

使用以下命令安装 Angular 1.5x 的类型后

npm install -s @types/angular

我在构建项目时遇到错误,但错误并没有消失。

Invalid 'reference' directive syntax

如何解决这个问题?

/// <reference types="angular" />
/// <reference types="d3" />

(function () {
    'use strict';

    var app = angular.module('charts', []);

    app.controller('mainCtrl', function mainCtrl($scope, appService) {

        var vm = this;

        vm.data1 = [1, 2, 3, 4];
        vm.data2 = [4, 5, 7, 11];
        vm.update = function (d, i) {
            vm.data1 = appService.GetRandomData();
            console.log('new data1', vm.data1);
        };

        vm.update2 = function (d, i) {
            vm.data2 = appService.GetRandomData();
            console.log('new data2', vm.data2);
        };
    });

    app.directive('barChart', function ($timeout) {
        var chart = d3.custom.barChart();
        return {
            restrict: 'E',
            replace: true,
            scope: true,
            bindToController: {
                data: '=',
            },
            controller: 'mainCtrl',
            controllerAs: 'ctrl',
            link: function (scope, element, attrs, ctrl) {
                var chartEl = d3.select(element[0]);

                chartEl.datum(ctrl.data).call(chart)
            }
        }
    });

    app.directive('chartForm', function () {
        return {
            restrict: 'E',
            replace: true,
            controller: 'mainCtrl',
            templateUrl: 'chartform.html'
        }
    });

    app.service('appService', function () {
        this.GetRandomData = function () {
            var rdata;

            rdata = d3.range(~~(Math.random() * 50) + 1).map(function (d, i) {
                return ~~(Math.random() * 100);
            });

            return rdata;
        }
    });

} ());

最佳答案

我在构建服务器 VSTS 中收到此错误。

升级类型脚本版本解决了我的问题。

在 package,json: 更改自

"typescript": "2.8.3"

 "typescript": "3.5.1"

关于angularjs - 引用 angular 1.5 时无效的 'reference' 指令语法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39669081/

相关文章:

typescript - 避免在 switch 中进行 typescript 转换

javascript - 在 Visual Studio Code 中使用装饰器时出错

typescript :防止分配具有比目标界面中指定的更多属性的对象

Flutter 自动完成功能在 VSCode 中不适用于包

javascript - VSCODE Javascript ----如何隐式导入库

python - 在 Visual Studio Code 中使用 Anaconda

javascript - Angular 中的 Promise 方法

javascript - ng-model 值始终未定义

javascript - 两个嵌套 ng-repeat 上的 Angular 自定义过滤

javascript - 设置angularJS选择默认值