Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/clojure/3.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
Backbone.js Grunt browserify外部libs give:找不到模块_Backbone.js_Npm_Grunt Browserify - Fatal编程技术网

Backbone.js Grunt browserify外部libs give:找不到模块

Backbone.js Grunt browserify外部libs give:找不到模块,backbone.js,npm,grunt-browserify,Backbone.js,Npm,Grunt Browserify,我正在使用主干木偶制作应用程序,并使用grunt browserify 3.8构建文件。 主干、木偶、下划线和jQuery都添加了npm。 我正在一个文件中编译我的所有文件。 一切正常,但是构建速度非常慢(比如1.5分钟),所以我读到了在grunt browserify中使用externalconfig选项的内容。 现在构建速度相当快,但当我访问页面时,我得到: Uncaught错误:在我第一次使用require函数时,无法在行中找到模块“下划线” 我到处都读,但我无法找到grunt brwos

我正在使用主干木偶制作应用程序,并使用grunt browserify 3.8构建文件。 主干、木偶、下划线和jQuery都添加了npm。 我正在一个文件中编译我的所有文件。 一切正常,但是构建速度非常慢(比如1.5分钟),所以我读到了在grunt browserify中使用
external
config选项的内容。 现在构建速度相当快,但当我访问页面时,我得到:
Uncaught错误:在我第一次使用require函数时,无法在行中找到模块“下划线”

我到处都读,但我无法找到grunt brwoserify的正确配置

这是我的Grunfile文件:

'use strict';

module.exports = function (grunt) {
    require('grunt-config-dir')(grunt, {
        configDir: require('path').resolve('tasks')
    });
    require('jit-grunt')(grunt);
    // show elapsed time at the end
    require('time-grunt')(grunt);

    grunt.registerTask('i18n', [ 'clean', 'dustjs', 'clean:tmp' ] ); // not used for now

    grunt.registerTask('build', ['i18n', 'less', 'cssmin', 'browserify', 'concurrent:build'] );

    grunt.registerTask('serve', [ 'build', 'concurrent:server'] ); // Build & run the server locally, for development.

};
下面是我的浏览任务:

'use strict';


module.exports = function browserify(grunt) {
    // Load task
    grunt.loadNpmTasks('grunt-browserify');

    // Options
    return {
        build: {
            files: {
                '.build/js/theme-smarty.js':  ['public/js/assets/smarty-themeApp/plugin/jquery.min.js', 'public/js/assets/smarty-themeApp/**/*.js'],
                '.build/js/app-bundled.js':   ['public/js/app.js'],
                '.build/js/landing-page.js':  ['public/js/landing-page.js']
                // '.build/js/app-admin-bundled.js': ['public/js/app-admin.js']
            },
            options: {
                // activate watchify
                watch: true,
                watchifyOptions: {
                    spawn: false
                },
                include: [
                    'public/js/**/*.js'
                ],
                transform: [['babelify', {'presets': 'es2015', 'compact': false}]],
                external: [
                    'backbone',
                    'underscore',
                    'jquery',
                    'backbone.marionette'
                ]
            }
        }
    };
};
这里是我的第一个观点,我需要LIB:

'use strict';

const
    _ = require('underscore'),
    $ = require('jquery'),
    Backbone = require('backbone'),
    Marionette = require('backbone.marionette'),
    MainRouter = require('./main-router'),
    MainController = require('./main-controller');
Backbone.$ = $;

let View = Marionette.LayoutView.extend({
    template: require('./main-page.dust'),

    regions: {
        mainContainer: '.main-container',
        modalContainer: '.modal-container'
    },

    initialize: function () {
            this.model = new Backbone.Model({
            page: this.$el.data('page')
        });

        new MainRouter({
            controller: new MainController({
                mainContainer: this.mainContainer,
                modalContainer: this.modalContainer
            })
        });
    },

    onRender: function () {
        Backbone.history.start({pushState: true});
    }

});

module.exports = View;
看起来我的
app bundled.js
文件中甚至没有编译lib。 编译它们的最佳/正确方法是什么? 最好有两个单独的文件?库和应用程序? 使用npm中的LIB是否可以只处理一个文件