Вот пример использования модулей ES6 (вы можете, конечно, использовать модули webpack, но я предпочитаю этот способ). Например, вы имеете такую структуру
/assets
/-js
/--components
/---shared
/---admin
/---b2c
/--directives
/--stores
/--models
/b2c.js
/admin.js
Так что в вашем b2c.js
вы должны использовать его таким образом.
import Vue from 'Vue';
import component from './components/shared/SomeComponent.vue';
/*or var component = require('./components/shared/SomeComponent.vue'); if you want to use webpack here*/
import b2cOnly from './components/b2c/SomeComponent.vue';
let app = new Vue({
el: '#app',
components: {component, b2cOnly}
});
И похоже admin.js
import Vue from 'Vue';
import component from './components/shared/SomeComponent.vue';
import adminOnly from './components/admin/SomeComponent.vue';
let app = new Vue({
el: '#app',
components: {component, adminOnly}
});
Тогда вы можете легко связать его с vue-loader
(или vueify, если вы используете browserify, как я https://github.com/vuejs/vueify)
http://vue-loader.vuejs.org/en/start/tutorial.html
Вот пример webpack.config.js
из документов
// webpack.config.js
module.exports = {
// other options ...
module: {
loaders: [
{
// use vue-loader for *.vue files
test: /\.vue$/,
loader: 'vue'
},
{
// use babel-loader for *.js files
test: /\.js$/,
loader: 'babel',
// important: exclude files in node_modules
// otherwise it's going to be really slow!
exclude: /node_modules/
}
]
},
// if you are using babel-loader directly then
// the babel config block becomes required.
babel: {
presets: ['es2015'],
plugins: ['transform-runtime']
}
}
Затем вы можете добавить свои данные admin.js
и b2c.js
где-то в вашем проекте.
Если вам нужна только доля кода (не личные вещи, такие как состояние, данные) между вашими компонентами, тогда вы можете разделить их на модули и использовать их в обоих проектах. http://vuejs.org/guide/application.html#Modularization – GONG
@GONG, поэтому я понимаю, что в этом случае должно быть «как использовать вопрос в веб-пакете»? Есть ли у вас какая-либо типовая конфигурация проекта, связанная с модулями b2c, admin с модулем общих компонентов, который можно построить с помощью webpack? – marcinn
см. Мой ответ ниже – GONG