如何在业力中提供JSON文件

时间:2015-07-17 09:52:55

标签: javascript json karma-runner karma-jasmine

我很难让Karma提供我的应用程序所需的json文件。我不想模仿json,我只需要它在业力服务器上提供。

当我检查Karma浏览器时,我可以很好地加载模板文件夹中的HTML文件。 但是找不到数据文件夹中的JSON文件。

但我以完全相同的方式配置了两个文件夹!

我尝试添加fixture插件,但它对正在提供的JSON文件没有影响。

我的Karma配置:

module.exports = function(config) {
  config.set({

    // base path that will be used to resolve all patterns (eg. files, exclude)
    basePath: './',

    // frameworks to use
    // available frameworks: https://npmjs.org/browse/keyword/karma-adapter
    frameworks: [
        'jasmine-jquery',
        'jasmine',
        'requirejs',
        'fixture'
    ],


    // list of files / patterns to load in the browser
    files: [
        //frontend
        {pattern: 'frontend/js/*.js', watched: true, served: true, included: false},
        {pattern: 'frontend/templates/*.*', watched: true, served: true, included: false},
        {pattern: 'frontend/data/*.json', watched: true, served: true, included: false},

        {pattern: 'test/**/*Spec.js', watched: true, included: false},

        //'test/helpers/jasmine-jquery.js',
        'test/helpers/jasmine-ajax-helper.js',
        'test/test-main.js'
    ],

    proxies: {
        "/templates/": "/base/frontend/templates/",
        "/base/../templates/": "/base/frontend/templates/",
        "/data/": "/base/frontend/data/",
        "/base/../data/": "/base/frontend/data/"
    },

    preprocessors: {
        '**/*.json'       : ['json_fixtures']
    },

    jsonFixturesPreprocessor: {
        variableName: '__json__'
    },

    // web server port
    port: 9876,

    // enable / disable colors in the output (reporters and logs)
    colors: true,

    logLevel: config.LOG_WARN,

    autoWatch: true,

    browsers: [
        'Firefox'
    ],

    singleRun: false,

  });//config.set
};//module.exports

我的应用程序的一个requireJS模块加载了一个JSON文件:

define([
    "text!../data/mydata.json"
], function (crowdUI, jsonDATA) {//prerequisites
    'use strict';

    fields = JSON.parse(jsonDATA);

});

0 个答案:

没有答案