小编Ano*_*mus的帖子

带有工件报告和路径的 gitlab ci 作业

所以,我想要做的是这样的:

rspec:
  script:
    - gem install rspec_junit_formatter
    - bundle exec rspec spec --format RspecJunitFormatter --out rspec.xml
  artifacts:
    name: "rspec"
    reports:
        junit: rspec.xml
    name: "coverage"
    paths:
        - coverage/
Run Code Online (Sandbox Code Playgroud)

这是从运行规范、规范报告和覆盖文件夹中获取的(然后将其压缩并yada yada yada)。我不介意获得规范的另一个版本......(但是可以通过向 rspec 命令添加另一个输出器并将路径添加到 paths 键来轻松完成,对吗?)

gitlab gitlab-ci

5
推荐指数
0
解决办法
1713
查看次数

为什么我的 Stimulus JS 控制器会触发两次?

所以,我有一个 Rails 应用程序,安装了 webpacker、vue、turbolinks 和stimulus js。
我遇到的问题是,即使控制器只导入一次,即使我暂时禁用涡轮链接,该initialize()功能也会connect()被调用两次。
仅当我进行刷新时才会发生这种情况(即不是当我第一次访问该页面时,而是仅当我执行页面重新加载时)。
奇怪的是,disconnect()只被调用一次(当我离开页面时)

这很糟糕,因为我需要在初始化时修改 DOM,所以我添加了两次元素。有人知道造成这种情况的原因和/或解决方案吗?

编辑:按照要求的application.js

require("@rails/ujs").start()
require("turbolinks").start()
require("@rails/activestorage").start()
require("channels")

import "stylesheets"
import "controllers"
import "components"
Run Code Online (Sandbox Code Playgroud)

组件/index.js

import Vue from 'vue/dist/vue.esm'
import BootstrapVue from 'bootstrap-vue'
import TurbolinksAdapter from 'vue-turbolinks'

Vue.use(BootstrapVue)
Vue.use(TurbolinksAdapter)

const components = {}
const context = require.context("components", true, /_component\.vue$/)
context.keys().forEach(filename => {
  const component_name = filename.replace(/^.*[\\\/]/, '').replace(/_component\.vue$/, '')
  const component = context(filename).default
  components[component_name] = component
})

document.addEventListener('turbolinks:load', () => {
  const app = new Vue({
    el: …
Run Code Online (Sandbox Code Playgroud)

turbolinks stimulusjs ruby-on-rails-6.1

4
推荐指数
1
解决办法
2532
查看次数