Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 为什么`./node\u modules/googleapis`我看到的是一个`build/src`文件夹而不是`src`文件夹_Node.js_Ember.js_Google Api Nodejs Client - Fatal编程技术网

Node.js 为什么`./node\u modules/googleapis`我看到的是一个`build/src`文件夹而不是`src`文件夹

Node.js 为什么`./node\u modules/googleapis`我看到的是一个`build/src`文件夹而不是`src`文件夹,node.js,ember.js,google-api-nodejs-client,Node.js,Ember.js,Google Api Nodejs Client,我有一个新的Ember项目,我通过npm install googleapis--save dev安装了google node sdk。然后我安装了ember-cli-es6-transform,希望从google api节点客户端导入es6模块 然而,我注意到在/node\u modules/googleapis中有一个build/src文件夹,而不是src文件夹。在中,它只是一个src文件夹。为什么会这样?这导致我在使用ember-cli-es6-transform时导入不可靠 这就是我的设

我有一个新的Ember项目,我通过
npm install googleapis--save dev
安装了google node sdk。然后我安装了
ember-cli-es6-transform
,希望从google api节点客户端导入es6模块

然而,我注意到在
/node\u modules/googleapis
中有一个
build/src
文件夹,而不是
src
文件夹。在中,它只是一个
src
文件夹。为什么会这样?这导致我在使用
ember-cli-es6-transform
时导入不可靠

这就是我的设计中的全部内容:

  "devDependencies": {
    "broccoli-asset-rev": "^2.4.5",
    "ember-ajax": "^3.0.0",
    "ember-cli": "~3.1.4",
    "ember-cli-app-version": "^3.0.0",
    "ember-cli-babel": "^6.6.0",
    "ember-cli-dependency-checker": "^2.0.0",
    "ember-cli-es6-transform": "^1.0.0",
    "ember-cli-eslint": "^4.2.1",
    "ember-cli-htmlbars": "^2.0.1",
    "ember-cli-htmlbars-inline-precompile": "^1.0.0",
    "ember-cli-inject-live-reload": "^1.4.1",
    "ember-cli-qunit": "^4.1.1",
    "ember-cli-sass": "^10.0.1",
    "ember-cli-shims": "^1.2.0",
    "ember-cli-sri": "^2.1.0",
    "ember-cli-uglify": "^2.0.0",
    "ember-data": "~3.1.0",
    "ember-export-application-global": "^2.0.0",
    "ember-load-initializers": "^1.0.0",
    "ember-maybe-import-regenerator": "^0.1.6",
    "ember-resolver": "^4.0.0",
    "ember-source": "~3.1.0",
    "ember-welcome-page": "^3.0.0",
    "eslint-plugin-ember": "^5.0.0",
    "googleapis": "^40.0.1",
    "loader.js": "^4.2.3",
    "sass": "^1.22.2"
  },

npm不要求存储库将其主文件放在任何特定位置或将其命名为index.js。建议您查看repo的package.json,并使用“main”键下列出的路径和文件

你可以在

googleapis选择在将其放在npm上之前构建其源代码,以使其更易于使用,因此使用build/src目录

有关package.json中“main”键的更多信息,请参阅

请注意,ember-cli-es6-transform允许您指定任何路径,因此只需将正确的路径作为参数输入即可

app.import('node_modules/googleapis/build/src/index.js', {
  using: [
    { transformation: 'es6', as: 'googleapis' }
  ]
});

当你说它“构建”它的源代码时,这是否意味着npm包实际上已经用es5编写好了?我尝试使用
es6
转换,但它仍然给我
未捕获的错误:找不到从…导入的模块“googleapis”
否,/src在TypeScript中,/build/src是es6。但是,build/src/index.js似乎没有默认的导出。