从' Angular&#x27导入{angular}不在AngularJS中工作(1.5)

发布于 2025-02-13 11:23:39 字数 1090 浏览 0 评论 0原文

Angularjs -1.5 打字稿-1.8.10 webpack -1.15.0

tsconfig.json

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "sourceMap": true
  },
  "exclude": [
    "node_modules",
    "typings",
    "dist"
  ],
  
  "compileOnSave": false,
  "buildOnSave": false,
  "atom": { "rewriteTsconfig": false }
}

我在./src/main/frontend/app/leftmenu/index.ts中遇到错误 时,找不到模块'angular'。

(1,21):错误ts2307:在我进行npm run build index.ts

import {angular} from 'angular';
import {MenuService} from './menuService';
import {LeftMenuController} from './leftmenu';


angular.module('tat')
.service('MenuService', MenuService)
.component('leftMenu',{
          template : require('./leftmenu.html'),
           controller : LeftMenuController,
           controllerAs : 'lm'
       });
        

请告诉我如何使我的索引可见角模块

AngularJS - 1.5
TypeScript - 1.8.10
WebPack - 1.15.0

tsconfig.json

{
  "compilerOptions": {
    "target": "es5",
    "module": "commonjs",
    "moduleResolution": "node",
    "emitDecoratorMetadata": true,
    "experimentalDecorators": true,
    "sourceMap": true
  },
  "exclude": [
    "node_modules",
    "typings",
    "dist"
  ],
  
  "compileOnSave": false,
  "buildOnSave": false,
  "atom": { "rewriteTsconfig": false }
}

I am getting ERROR in ./src/main/frontend/app/leftmenu/index.ts
(1,21): error TS2307: Cannot find module 'angular'.
while i do a npm run build

index.ts

import {angular} from 'angular';
import {MenuService} from './menuService';
import {LeftMenuController} from './leftmenu';


angular.module('tat')
.service('MenuService', MenuService)
.component('leftMenu',{
          template : require('./leftmenu.html'),
           controller : LeftMenuController,
           controllerAs : 'lm'
       });
        

Please tell me how do I make the angular module visible to my index.ts

Note :: The angular module is present inside the node_modules.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

清眉祭 2025-02-20 11:23:40

您应该将AngularJS作为默认模块导入。还建议将您的服务和组件作为角模块导出。这让您将所有内容作为ES6模块管理。

   import angular from 'angular';
   import MenuServiceMod from './menuService';
   import LeftMenuComponentMod from './leftmenu';

   export default angular.module('tat', [
     MenuServiceMod,
     LeftMenuComponentMod
   ]);

   // component leftmenu.js
   const compConfig = {
      template : require('./leftmenu.html'),
       controller : LeftMenuController,
       controllerAs : 'lm'
   };
   function LeftMenuController() {
   // component logic
   }
   let compMod = angular.module('LeftMenuMod', []).component('leftMenu', compConfig);
   export default compMod = compMod.name;

   // service menuService.js
   class MenuService {
   // service logic
   }
   let svcMod = angular.module('MenuServiceMod', []).service('MenuService', MenuService);
   export default svcMod = svcMod.name;

You should import AngularJS as a default module. Also suggest to export as default your services and components as angular modules. This let you manage all your stuff as ES6 modules.

   import angular from 'angular';
   import MenuServiceMod from './menuService';
   import LeftMenuComponentMod from './leftmenu';

   export default angular.module('tat', [
     MenuServiceMod,
     LeftMenuComponentMod
   ]);

   // component leftmenu.js
   const compConfig = {
      template : require('./leftmenu.html'),
       controller : LeftMenuController,
       controllerAs : 'lm'
   };
   function LeftMenuController() {
   // component logic
   }
   let compMod = angular.module('LeftMenuMod', []).component('leftMenu', compConfig);
   export default compMod = compMod.name;

   // service menuService.js
   class MenuService {
   // service logic
   }
   let svcMod = angular.module('MenuServiceMod', []).service('MenuService', MenuService);
   export default svcMod = svcMod.name;
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文