在 Vue.js 项目中包含手写笔插件
Include a stylus plugin in Vue.js project
我不能在我的项目中包含手写笔插件,一个版本与另一个版本的代码差异很大,以至于我无法尝试一切。
以下是我目前拥有的版本:
"nib": "^1.1.2",
"vue": "^2.5.16",
"stylus": "^0.54.5",
"stylus-loader": "^3.0.2",
// vue.config.js
const nib = require('nib');
module.exports = {
configureWebpack: {
stylus: {
use: [nib()],
import: ['nib'],
},
},
};
有人成功了吗?
我想知道怎么做以及为什么我做的不起作用,谢谢。
要使用 Stylus,您需要在 webpack 配置中配置 css 加载程序,将其添加到规则中:
{
test: /\.css$/,
use: [
'vue-style-loader',
'css-loader'
]
}
并安装样式加载器:
npm install --save-dev css-loader vue-style-loader
然后应该加载 css,并且您在我们的外部资产和单文件组件中都有 css 处理。
此处使用手写笔的最后一个更改是安装加载程序:
npm install --save-dev stylus stylus-loader
并添加一条规则:
{
test: /\.styl(us)?$/,
use: [
'vue-style-loader',
'css-loader',
'stylus-loader'
]
}
一旦我使用 vue-cli 这样安装了破裂:
const rupture = require('rupture')
module.exports = {
configureWebpack: {
css: {
loaderOptions: {
stylus: {
use: [rupture()]
}
}
}
}
}
我找到了安装 nib 的正确方法:
module.exports = {
css: {
loaderOptions: {
stylus: {
use: [require('nib')()],
import: ['~nib/lib/nib/index.styl']
}
}
}
}
最终解决方案:
在vue.config.js文件中
const path = require('path');
module.exports = {
css: {
loaderOptions: {
stylus: {
use: [
require('nib')(),
],
import: [
path.resolve(__dirname, './src/styles/nibFixes.styl'),
'~nib/lib/nib/index.styl',
],
},
},
},
};
在 ./src/styles/nibFixes.styl 文件中
// To fix https://github.com/stylus/nib/issues/312
flex-version = flex
support-for-ie = false
vendor-prefixes = official
我不能在我的项目中包含手写笔插件,一个版本与另一个版本的代码差异很大,以至于我无法尝试一切。
以下是我目前拥有的版本:
"nib": "^1.1.2",
"vue": "^2.5.16",
"stylus": "^0.54.5",
"stylus-loader": "^3.0.2",
// vue.config.js
const nib = require('nib');
module.exports = {
configureWebpack: {
stylus: {
use: [nib()],
import: ['nib'],
},
},
};
有人成功了吗?
我想知道怎么做以及为什么我做的不起作用,谢谢。
要使用 Stylus,您需要在 webpack 配置中配置 css 加载程序,将其添加到规则中:
{
test: /\.css$/,
use: [
'vue-style-loader',
'css-loader'
]
}
并安装样式加载器:
npm install --save-dev css-loader vue-style-loader
然后应该加载 css,并且您在我们的外部资产和单文件组件中都有 css 处理。
此处使用手写笔的最后一个更改是安装加载程序:
npm install --save-dev stylus stylus-loader
并添加一条规则:
{
test: /\.styl(us)?$/,
use: [
'vue-style-loader',
'css-loader',
'stylus-loader'
]
}
一旦我使用 vue-cli 这样安装了破裂:
const rupture = require('rupture')
module.exports = {
configureWebpack: {
css: {
loaderOptions: {
stylus: {
use: [rupture()]
}
}
}
}
}
我找到了安装 nib 的正确方法:
module.exports = {
css: {
loaderOptions: {
stylus: {
use: [require('nib')()],
import: ['~nib/lib/nib/index.styl']
}
}
}
}
最终解决方案:
在vue.config.js文件中
const path = require('path');
module.exports = {
css: {
loaderOptions: {
stylus: {
use: [
require('nib')(),
],
import: [
path.resolve(__dirname, './src/styles/nibFixes.styl'),
'~nib/lib/nib/index.styl',
],
},
},
},
};
在 ./src/styles/nibFixes.styl 文件中
// To fix https://github.com/stylus/nib/issues/312
flex-version = flex
support-for-ie = false
vendor-prefixes = official