(发生器 - 聚合物)哟聚合物失效,找不到模块'find-index'

Jac*_*ips 11 node.js npm yeoman polymer yeoman-generator

输入yo polymer一个干净的目录后,这是完整的错误.

module.js:338
    throw err;
          ^
Error: Cannot find module 'find-index'
    at Function.Module._resolveFilename (module.js:336:15)
    at Function.Module._load (module.js:278:25)
    at Module.require (module.js:365:17)
    at require (module.js:384:17)
    at Object.<anonymous> (/usr/lib/node_modules/generator-polymer/node_modules/yeoman-generator/node_modules/download/node_modules/vinyl-fs/node_modules/glob-stream/node_modules/glob2base/index.js:4:17)
    at Module._compile (module.js:460:26)
    at Object.Module._extensions..js (module.js:478:10)
    at Module.load (module.js:355:32)
    at Function.Module._load (module.js:310:12)
    at Module.require (module.js:365:17)
Run Code Online (Sandbox Code Playgroud)

我刚刚重新安装了与节点相关的所有东西,但这里有版本.

node:              v0.12.7
npm:               2.11.3
yo:                1.4.7
bower:             1.4.1
grunt-cli:         v0.1.13
gulp:              3.9.0
generator-polymer: 1.0.5
Run Code Online (Sandbox Code Playgroud)

请注意,我在安装时会收到警告generator-polymer.

npm WARN deprecated CSSselect@0.4.1: the module is now available as 'css-select'
npm WARN deprecated CSSwhat@0.4.7: the module is now available as 'css-what'
Run Code Online (Sandbox Code Playgroud)

我也尝试手动安装三个有问题的模块,这似乎是成功的.

sudo npm install -g find-index css-select css-what
Run Code Online (Sandbox Code Playgroud)

我没有想法.节点是从nodejs.org下载的源安装的.

编辑:我还安装了n使用sudo npm install -g n安装节点.我试过没有运气卸载/重新安装node/npm.

EDIT2: yo webapp有效,所以罪魁祸首是(必须是?)发电机聚合物.

Jac*_*ips 0

我能够通过删除有问题的目录来解决这个问题,

/usr/lib/node_modules/generator-polymer

我不记得简单地重新安装发电机聚合物(sudo npm install -g generator-polymer)是否可以完全解决问题(请告诉我,我将更新答案)。我最终重新安装了所有内容,以确保任何问题得到缓解。

环境设置

  1. 安装Node.js。按照其网站上的说明为您的操作系统安装。
  2. 通过在系统控制台中键入命令来安装Yeoman 。sudo npm install -g yo全局安装-g该软件包,这就是sudo需要该命令的原因(您的系统可能会有所不同)。
  3. 接下来我们将安装几个Yeoman 发电机
    1. 使用命令安装聚合物生成器sudo npm install -g generator-polymer
    2. (可选)使用命令安装聚合物元素生成器sudo npm install -g generator-element。这将有助于搭建自定义聚合物元素。

开始一个新项目

开发环境设置完毕后,启动项目就变得非常容易。

mkdir my-project
cd my-project
yo polymer
Run Code Online (Sandbox Code Playgroud)

my-project将使用最新版本的聚合物和其他依赖项在目录中设置一个新的聚合物项目。

测试项目

Polymer 使用gulp流式构建系统。从您的项目目录中,只需键入

gulp serve
Run Code Online (Sandbox Code Playgroud)

请参阅我的Polymer 1.0 Notes Google 文档。