Angularjs 使用npm http服务器时未加载js文件

Angularjs 使用npm http服务器时未加载js文件,angularjs,npm,protractor,Angularjs,Npm,Protractor,我一直在为客户开发一个网站,使用angularjs作为前端。测试是用量角器写的。 当我在eclipse中使用Tomcat 8运行该站点时,该站点按预期工作,但当使用npm http服务器进行测试运行时,我在2个指令之间共享数据的服务无法运行。service.variable始终保持未定义的状态 我已经设置了一个Plunker来尽可能多地表示结构 package.json { "version": "1.0.5", "private": true, "name": "troubles

我一直在为客户开发一个网站,使用angularjs作为前端。测试是用量角器写的。 当我在eclipse中使用Tomcat 8运行该站点时,该站点按预期工作,但当使用npm http服务器进行测试运行时,我在2个指令之间共享数据的服务无法运行。
service.variable
始终保持
未定义的状态

我已经设置了一个Plunker来尽可能多地表示结构

package.json

{
  "version": "1.0.5",
  "private": true,
  "name": "troubleshooting-webapp",
  "description": "Troubleshooting REST Service",
  "devDependencies": {
    "bower": "^1.4.1",
    "http-server": "^0.8.5",
    "protractor": "^3.0.0",
    "protractor-http-mock": "^0.2.1",
    "shelljs": "^0.2.6",
    "tmp": "0.0.23"
  },
  "scripts": {
    "setup": "npm install",
    "start": "cd src/main &&  http-server -a 0.0.0.0 -p 8000",
    "stop": "pkill --signal SIGINT node",
    "update-webdriver": "webdriver-manager update",
    "preprotractor": "npm run update-webdriver",
    "protractor": "protractor src/main/webapp/js/tests/protractor-conf.js",
    "preprotractor_debug": "npm run update-webdriver",
    "protractor_debug": "protractor debug src/main/webapp/js/tests/protractor-conf.js"
  }
}
量角器-conf.js

exports.config = {
  allScriptsTimeout: 18000,

  specs: [
    'e2e/*.js'
  ],

  mocks: {
        dir: 'mocks'
  },  
  onPrepare: function(){
        require('protractor-http-mock').config = {
            rootDirectory: __dirname, // default value: process.cwd()
            protractorConfig: 'protractor-conf.js' // default value: 'protractor.conf'
        };
  },

  capabilities: {
    'browserName': 'firefox'
  },

  baseUrl: 'http://localhost:8000/',

  framework: 'jasmine',

  jasmineNodeOpts: {
    defaultTimeoutInterval: 90000
  }
};
任何关于filterSelection服务为何未定义的想法都很好


经过进一步的研究,似乎模拟也没有加载。

看起来你没有在模拟配置中传递任何
mock
?你能展示一下你是如何使用mock的吗?@NickTomlin在与conf文件相同的级别上,有一个名为
mock
的文件夹,里面有所有的mock。它们是使用
mocks:{dir:'mocks'}
参数传递的,不是吗?看起来你在模拟配置中没有传递任何
mock
?你能展示一下你是如何使用mock的吗?@NickTomlin在与conf文件相同的级别上,有一个名为
mock
的文件夹,里面有所有的mock。它们是使用
mocks:{dir:'mocks'}
参数传递的,否?