我正在使用一些角度的入门套件。有webpack,eslint和其他有用的东西。
但是,我不明白如何使用依赖。我有以下代码:
import angular from 'angular';
import routing from './app.config';
import auth0 from 'auth0-js';
import jwtHelper from 'angular-jwt';
import store from 'angular-storage';
...
angular.module('app', [
uirouter,
...
jwtHelper,
store,
...
])
.config(routing)
.run(($state, auth, store, jwtHelper) => {
some code;
});
但是,我收到以下错误:
99:16错误'auth'已在上限范围内声明无阴影
中声明
99:22错误'store'已在上限范围no-shadow中声明 99:29错误'jwtHelper'已在上限范围no-shadow
热门正确使用它们吗?
答案 0 :(得分:1)
只需重命名一个重复的声明变量,这样您的作用域就不会混乱。
您可以重命名上半部分
import angularJwt from 'angular-jwt';
import angularStorage from 'angular-storage';
或简单地重命名依赖项,如:(并将原始名称保留在$inject
声明中)
routing.$inject = ['$urlRouterProvider', '$locationProvider', 'localStorageServiceProvider'];
export default function routing($urlRouterProviderCustomName, $locationProviderCustomName, localStorageServiceProviderCustomName) {
$locationProviderCustomName.html5Mode(true);
$urlRouterProviderCustomName.otherwise('/dash');
localStorageServiceProviderCustomName.setPrefix('elmahbucket');
}