Twitter bootstrap 3 使用vue的Web包加载引导
如何让引导程序工作并加载vue项目的webpack 我一直在尝试使用这个: 我将加载程序添加到我的webpack.config.js并安装了引导sass webpack。我在尝试生成时遇到以下错误:Twitter bootstrap 3 使用vue的Web包加载引导,twitter-bootstrap-3,webpack,vue.js,Twitter Bootstrap 3,Webpack,Vue.js,如何让引导程序工作并加载vue项目的webpack 我一直在尝试使用这个: 我将加载程序添加到我的webpack.config.js并安装了引导sass webpack。我在尝试生成时遇到以下错误: ERROR in ./~/bootstrap-sass-webpack/index.js Module not found: Error: Cannot resolve module 'sass' in /Users/joebob/Desktop/vue-webpack-starter/node_m
ERROR in ./~/bootstrap-sass-webpack/index.js
Module not found: Error: Cannot resolve module 'sass' in /Users/joebob/Desktop/vue-webpack-starter/node_modules/bootstrap-sass-webpack
@ ./~/bootstrap-sass-webpack/index.js 1:0-76
webpack.config.js
module.exports = {
entry: './src/main.js',
output: {
path: './dist',
publicPath: 'dist/',
filename: 'build.js'
},
module: {
loaders: [
{
test: /\.js$/,
loader: 'babel',
exclude: /node_modules/
},
{
test: /\.vue$/,
loader: 'vue'
},
{ test: /\.woff$/, loader: "url-loader?limit=10000&minetype=application/font-woff" },
{ test: /\.ttf$/, loader: "file-loader" },
{ test: /\.eot$/, loader: "file-loader" },
{ test: /\.svg$/, loader: "file-loader" }
]
},
vue: {
loaders: {
js: 'babel'
}
}
}
package.json
{
"name": "vue-webpack-starter",
"version": "1.0.0",
"dependencies": {
"bootstrap-sass-webpack": "0.0.3",
"vue": "^1.0.16",
"vue-router": "^0.7.11"
},
"devDependencies": {
"babel-core": "^6.1.2",
"babel-loader": "^6.1.0",
"babel-plugin-transform-runtime": "^6.1.2",
"babel-preset-es2015": "^6.1.2",
"babel-preset-stage-0": "^6.1.2",
"babel-runtime": "^5.8.0",
"css-loader": "^0.23.0",
"file-loader": "^0.8.5",
"style-loader": "^0.13.0",
"url-loader": "^0.5.7",
"vue-hot-reload-api": "^1.2.0",
"vue-html-loader": "^1.0.0",
"vue-loader": "^7.3.0",
"webpack": "^1.12.2"
}
}
main.js
import Vue from 'vue'
import VueRouter from 'vue-router'
import App from './app.vue'
import Home from './home.vue'
import Items from './items.vue'
require("bootstrap-sass-webpack")
Vue.use(VueRouter)
var router = new VueRouter()
router.map({
'/': {
name: 'home',
component: Home
},
'/items': {
name: 'items',
component: Items
}
})
router.start(App, '#app')
添加sass加载程序修复了此错误。我现在得到:
ERROR in ./~/bootstrap-sass-webpack/~/css-loader!./~/sass-loader!./~/bootstrap-sass-webpack/bootstrap-sass-styles.loader.js!./~/bootstrap-sass-webpack/bootstrap-sass.config.js
Module build failed:
scripts: {
^
Invalid CSS after "@icon-font-path": expected 1 selector or at-rule, was "bootstrap-sass/..."
in /Users/joebob/Development/vue-webpack-starter/node_modules/bootstrap-sass-webpack/bootstrap-sass.config.js (line 2, column 1)
@ ./~/bootstrap-sass-webpack/~/style-loader!./~/bootstrap-sass-webpack/~/css-loader!./~/sass-loader!./~/bootstrap-sass-webpack/bootstrap-sass-styles.loader.js!./~/bootstrap-sass-webpack/bootstrap-sass.config.js 4:2-458
您应该安装
sass加载程序
:
npm install sass-loader --save-dev
您应该安装
sass加载程序
:
npm install sass-loader --save-dev
这就是我使用webpack simple template和引导sass()所做的: package.json
{
"name": "vue-webpack-starter",
"version": "1.0.0",
"dependencies": {
"bootstrap-sass-webpack": "0.0.3",
"vue": "^1.0.16",
"vue-router": "^0.7.11"
},
"devDependencies": {
"babel-core": "^6.1.2",
"babel-loader": "^6.1.0",
"babel-plugin-transform-runtime": "^6.1.2",
"babel-preset-es2015": "^6.1.2",
"babel-preset-stage-0": "^6.1.2",
"babel-runtime": "^5.8.0",
"css-loader": "^0.23.0",
"file-loader": "^0.8.5",
"style-loader": "^0.13.0",
"url-loader": "^0.5.7",
"vue-hot-reload-api": "^1.2.0",
"vue-html-loader": "^1.0.0",
"vue-loader": "^7.3.0",
"webpack": "^1.12.2"
}
}
{
“名称”:“示例”,
“说明”:“一个Vue.js项目”,
“版本”:“1.0.0”,
“作者”:“Aleix Fabra”,
“私人”:没错,
“脚本”:{
“dev”:“cross env NODE_env=开发网页包dev server--open--hot”,
“构建”:“交叉环境节点_env=生产网页包--进度--隐藏模块”
},
“依赖项”:{
“vue”:“^2.3.3”
},
“依赖性”:{
“巴别塔核心”:“^6.0.0”,
“巴别塔加载器”:“^6.0.0”,
“巴别塔预设环境”:“^1.5.1”,
“引导式sass”:“^3.3.7”,
“交叉环境”:“^3.0.0”,
“css加载器”:“^0.25.0”,
“文件加载器”:“^0.9.0”,
“节点sass”:“^4.5.0”,
“sass加载程序”:“^5.0.1”,
“vue加载程序”:“^12.1.0”,
“vue模板编译器”:“^2.3.3”,
“网页包”:“^2.6.1”,
网页包开发服务器“^2.4.5”
}
}
main.js
import Vue from 'vue'
import VueRouter from 'vue-router'
import App from './app.vue'
import Home from './home.vue'
import Items from './items.vue'
require("bootstrap-sass-webpack")
Vue.use(VueRouter)
var router = new VueRouter()
router.map({
'/': {
name: 'home',
component: Home
},
'/items': {
name: 'items',
component: Items
}
})
router.start(App, '#app')
window.$=window.jQuery=require('jQuery'))
导入“引导sass”
导入“bootstrap sass/assets/stylesheets/_bootstrap.scss”
从“Vue”导入Vue
从“./App.vue”导入应用程序
新Vue({
el:“#应用程序”,
渲染:h=>h(应用程序)
})
webpack.config.js
module.exports = {
entry: './src/main.js',
output: {
path: './dist',
publicPath: 'dist/',
filename: 'build.js'
},
module: {
loaders: [
{
test: /\.js$/,
loader: 'babel',
exclude: /node_modules/
},
{
test: /\.vue$/,
loader: 'vue'
},
{ test: /\.woff$/, loader: "url-loader?limit=10000&minetype=application/font-woff" },
{ test: /\.ttf$/, loader: "file-loader" },
{ test: /\.eot$/, loader: "file-loader" },
{ test: /\.svg$/, loader: "file-loader" }
]
},
vue: {
loaders: {
js: 'babel'
}
}
}
var path=require('path'))
var webpack=require('webpack')
module.exports={
条目:'./src/main.js',
输出:{
path:path.resolve(uu dirname,'./dist'),
publicPath:“/dist/”,
文件名:“build.js”
},
模块:{
规则:[
{
测试:/\.vue$/,,
加载程序:“vue加载程序”,
选项:{
装载机:{
//由于sass加载器(奇怪地)将SCSS作为其默认解析模式,因此我们映射
//右侧lang属性的“scss”和“sass”值在此处配置。
//其他预处理器应该开箱即用,不需要像这样的加载程序配置。
“scss”:“vue样式加载程序!css加载程序!sass加载程序”,
“sass”:“vue样式加载程序!css加载程序!sass加载程序?缩进语法”
}
//其他vue加载程序选项在此处
}
},
{
测试:/\.js$/,,
加载器:“巴别塔加载器”,
排除:/node\u模块/
},
{
测试:/\(png | jpg | gif | svg)$/,
加载器:“文件加载器”,
选项:{
名称:'[name].[ext]?[hash]'
}
},
{
测试:/\.scss$/,,
加载器:“样式加载器!css加载器!sass加载器”
},
{
测试:/\(otf | eot | woff | woff2 | ttf | svg)$/,
加载器:“文件加载器”
},
]
},
决心:{
别名:{
“vue$”:“vue/dist/vue.esm.js”
}
},
开发服务器:{
历史上的倒退:是的,
是的
},
性能:{
提示:错误
},
devtool:“#评估源映射”
}
if(process.env.NODE_env===‘生产’){
module.exports.devtool='#源映射'
// http://vue-loader.vuejs.org/en/workflow/production.html
module.exports.plugins=(module.exports.plugins | | |[]).concat([
新的webpack.DefinePlugin({
“process.env”:{
节点_ENV:'生产''
}
}),
新建webpack.optimize.UglifyJsPlugin({
sourceMap:true,
压缩:{
警告:错误
}
}),
新的webpack.LoaderOptionsPlugin({
最小化:真
})
])
}
这就是我使用网页包简单模板和引导sass所做的:
package.json
{
"name": "vue-webpack-starter",
"version": "1.0.0",
"dependencies": {
"bootstrap-sass-webpack": "0.0.3",
"vue": "^1.0.16",
"vue-router": "^0.7.11"
},
"devDependencies": {
"babel-core": "^6.1.2",
"babel-loader": "^6.1.0",
"babel-plugin-transform-runtime": "^6.1.2",
"babel-preset-es2015": "^6.1.2",
"babel-preset-stage-0": "^6.1.2",
"babel-runtime": "^5.8.0",
"css-loader": "^0.23.0",
"file-loader": "^0.8.5",
"style-loader": "^0.13.0",
"url-loader": "^0.5.7",
"vue-hot-reload-api": "^1.2.0",
"vue-html-loader": "^1.0.0",
"vue-loader": "^7.3.0",
"webpack": "^1.12.2"
}
}
{
“名称”:“示例”,
“说明”:“一个Vue.js项目”,
“版本”:“1.0.0”,
“作者”:“Aleix Fabra”,
“私人”:没错,
“脚本”:{
“dev”:“cross env NODE_env=开发网页包dev server--open--hot”,
“构建”:“交叉环境节点_env=生产网页包--进度--隐藏模块”
},
“依赖项”:{
“vue”:“^2.3.3”
},
“依赖性”:{
“巴别塔核心”:“^6.0.0”,
“巴别塔加载器”:“^6.0.0”,
“巴别塔预设环境”:“^1.5.1”,
“引导式sass”:“^3.3.7”,
“交叉环境”:“^3.0.0”,
“css加载器”:“^0.25.0”,
“文件加载器”:“^0.9.0”,
“节点sass”:“^4.5.0”,
“sass加载程序”:“^5.0.1”,
“vue加载程序”:“^12.1.0”,
“vue模板编译器”:“^2.3.3”,
“网页包”:“^2.6.1”,
网页包开发服务器“^2.4.5”
}
}
main.js
import Vue from 'vue'
import VueRouter from 'vue-router'
import App from './app.vue'
import Home from './home.vue'
import Items from './items.vue'
require("bootstrap-sass-webpack")
Vue.use(VueRouter)
var router = new VueRouter()
router.map({
'/': {
name: 'home',
component: Home
},
'/items': {
name: 'items',
component: Items
}
})
router.start(App, '#app')
window.$=window.jQuery=require('jQuery'))
导入“引导sass”
导入“bootstrap sass/assets/stylesheets/_bootstrap.scss”
从“Vue”导入Vue
从“./App.vue”导入应用程序
新Vue({
el:“#应用程序”,
渲染:h=>h(应用程序)
})
webpack.config.js
module.exports = {
entry: './src/main.js',
output: {
path: './dist',
publicPath: 'dist/',
filename: 'build.js'
},
module: {
loaders: [
{
test: /\.js$/,
loader: 'babel',
exclude: /node_modules/
},
{
test: /\.vue$/,
loader: 'vue'
},
{ test: /\.woff$/, loader: "url-loader?limit=10000&minetype=application/font-woff" },
{ test: /\.ttf$/, loader: "file-loader" },
{ test: /\.eot$/, loader: "file-loader" },
{ test: /\.svg$/, loader: "file-loader" }
]
},
vue: {
loaders: {
js: 'babel'
}
}
}
var path=require('path'))
var webpack=require('webpack')
module.exports={
条目:'./src/main.js',
输出:{
path:path.resolve(uu dirname,'./dist'),
publicPath:“/dist/”,
文件名:“build.js”
},
模块:{
规则:[
{
测试:/\.vue$/,,
加载程序:“vue加载程序”,
选项:{
装载机:{
//由于sass加载器(奇怪地)将SCSS作为其默认解析模式,因此我们映射
//右侧lang属性的“scss”和“sass”值在此处配置。
//其他预处理器应该开箱即用,不需要像这样的加载程序配置。
“scss”:“vue样式加载程序!css加载程序!sass加载程序”,
“sass”:“vue样式加载程序!css加载程序!sass加载程序?缩进语法”
}
//其他vue加载程序选项在此处
}
},
{
测试:/\.js$/,,
加载器:“巴别塔加载器”,
排除:/node\u模块/
},
{
测试:/\(png | jpg | gif | svg)$/,
加载器:“文件加载器”,
选择权