1
1
# Project relative image URLs for Bootstrap Vue custom components
2
2
3
3
> vue-loader automatically converts project relative ` src ` attributes
4
- on `<img> ` tags, but doesn't automatically for Bootrap -Vue custom
4
+ on `<img> ` tags, but doesn't automatically for Bootstrap -Vue custom
5
5
components that accept image src url tags.
6
6
7
- ## Vue-loader ` transformToRequire ` to resolve img paths
7
+ ## Vue-loader ` transformAssetUrls ` to resolve img paths
8
8
To have your project convert these custom component image URLs for you, you will need to
9
- customize the [ ` transformToRequire ` ] ( https://vue-loader.vuejs.org/en/ options.html#transformtorequire )
9
+ customize the [ ` transformAssetUrls ` ] ( https://vue-loader.vuejs.org/options.html#transformasseturls )
10
10
` option ` for ` vue-loader ` in your webpack config.
11
11
12
- The default value for ` transformToRequire ` is:
12
+ The default value for ` transformAssetUrls ` is:
13
13
14
14
``` js
15
- transformToRequire: {
16
- ' img' : ' src' ,
17
- ' image' : ' xlink:href'
15
+ transformAssetUrls: {
16
+ video: [' src' , ' poster' ],
17
+ source: ' src' ,
18
+ img: ' src' ,
19
+ image: ' xlink:href'
18
20
}
19
21
```
20
22
21
23
To allow Bootstrap-Vue components to use project relative URLs,
22
24
use the following configuration:
23
25
24
26
``` js
25
- transformToRequire: {
26
- ' img' : ' src' ,
27
- ' image' : ' xlink:href' ,
28
- ' b-img' : ' src' ,
29
- ' b-img-lazy' : [' src' , ' blank-src' ],
30
- ' b-card' : ' img-src' ,
31
- ' b-card-img' : ' img-src' ,
32
- ' b-carousel-slide' : ' img-src' ,
33
- ' b-embed' : ' src'
27
+ transformAssetUrls: {
28
+ video: [' src' , ' poster' ],
29
+ source: ' src' ,
30
+ img: ' src' ,
31
+ image: ' xlink:href' ,
32
+ ' b-img' : ' src' ,
33
+ ' b-img-lazy' : [' src' , ' blank-src' ],
34
+ ' b-card' : ' img-src' ,
35
+ ' b-card-img' : ' img-src' ,
36
+ ' b-carousel-slide' : ' img-src' ,
37
+ ' b-embed' : ' src'
34
38
}
35
39
```
36
40
@@ -42,17 +46,19 @@ This will allow you to use the following format in your `.vue` files:
42
46
<b-card-img img-src =" ~/static/picture.jpg" />
43
47
```
44
48
45
- ### Configuring ` transformToRequire ` in Nuxt
49
+ ### Configuring ` transformAssetUrls ` in Nuxt
46
50
47
51
In your ` nuxt.config.js ` file, add the following to your build section:
48
52
49
53
``` js
50
54
build: {
51
55
extend (config , ctx ) {
52
56
const vueLoader = config .module .rules .find ((rule ) => rule .loader === ' vue-loader' )
53
- vueLoader .options .transformToRequire = {
54
- ' img' : ' src' ,
55
- ' image' : ' xlink:href' ,
57
+ vueLoader .options .transformAssetUrls = {
58
+ video: [' src' , ' poster' ],
59
+ source: ' src' ,
60
+ img: ' src' ,
61
+ image: ' xlink:href' ,
56
62
' b-img' : ' src' ,
57
63
' b-img-lazy' : [' src' , ' blank-src' ],
58
64
' b-card' : ' img-src' ,
@@ -65,7 +71,7 @@ build: {
65
71
```
66
72
67
73
## Using ` require ` to resolve image paths
68
- If you cannot set the ` transforToRequire ` in your view-loader config, you
74
+ If you cannot set the ` transformAssetUrls ` in your view-loader config, you
69
75
can alternatively use the ` require ` method:
70
76
71
77
``` html
0 commit comments