我有一个使用Gulp进行构建的GitLab Pages网站.我的.gitlab-ci.yml文件看起来类似于:
image: node:latest
before_script:
- npm install gulp-cli -g
- npm install gulp [...and a whole bunch of packages] --save-dev
build:
stage: build
script:
- gulp buildsite
artifacts:
paths:
- public
pages:
stage: deploy
script:
- gulp
artifacts:
paths:
- public
cache:
paths:
- node_modules/
Run Code Online (Sandbox Code Playgroud)
在build和pages作业之前,npm install执行命令(在每个作业之前执行一次).由于我有很多包,这通常需要一段时间.
有没有办法只在整个构建中进行一次安装?
我认为这cache应该是有用的,但它似乎仍然会重新下载所有内容.
我有一个VueJS应用程序,它将有许多不同的主题(至少20左右).每个主题样式表不仅会更改颜色和字体大小等内容,还会更改某些元素的位置和布局.
我希望用户能够动态地在这些主题之间切换.因此,在运行时,用户将能够打开"选项"菜单并从下拉列表中进行选择.
在VueJS中拥有许多动态用户可选主题的最简洁方法是什么?
我想过几个方面,比如:
<link>或<style>标记.虽然这可能有用,但我并不认为它特别"干净",如果我从AJAX加载,那么我经常会看到一个FOUC.if-else为每个组件中的每个受支持主题建立链.我并不特别喜欢这个解决方案,因为每次我添加新主题时,我制作的每个组件都需要更新.在React中,我认为有一个插件或具有<ThemeProvider>组件的东西,其中添加主题就像包装它一样简单,即<ThemeProvider theme={themeProp}><MyComponent></ThemeProvider>,该主题中的所有样式将应用于该组件和所有子组件.
VueJS有类似的东西,还是有办法实现它?
我有一个 Gitlab Pages 项目站点,托管为my.gitlab.io/old.
我将项目存储库重命名为new. 当我再次推送时,它仍然发布到my.gitlab.io/old.
我该如何将其更改为my.gitlab.io/new?
gitlab-pages ×2
gitlab ×1
gitlab-ci ×1
gulp ×1
node.js ×1
npm-install ×1
themes ×1
vue.js ×1
vuejs2 ×1