小编Mar*_*bov的帖子

如何禁用 vuejs 路由器链接?

我有一个使用 vue 创建的单页应用程序,导航链接都是使用router-link标签完成的。导航中有几个项目我的老板希望在导航中包含但已禁用,以便人们可以一瞥即将推出的一些功能。但是我不知道如何完全禁用路由器链接!

preventDefault什么都不@click.native.prevent="stopClick()"做,什么都不做(我尝试将它发送到一个函数以查看是否会阻止点击,但尽管阻止,它仍然只是调用该函数和路由),添加一个disabled类并设置一个pointer-events: none;什么都不做的 css 规则。我不知道还有什么可以尝试的,这是使禁用的链接成为普通文本而不是路由器链接的唯一方法吗?

javascript vue.js vue-router routerlink

19
推荐指数
6
解决办法
1万
查看次数

每个 vue 组件返回无法读取未定义的属性“parseComponent”

所以我试过研究这个,但没有一个解决方案有效。我认为这可能是我的某些 vue 依赖项的具体问题vue-loader,但我不确定要具体做什么来修复它。我试过了:

  • 删除node_modules并重新运行npm install
  • npm update
  • 我试过vue-loader完全删除
  • 尝试添加、删除和更新 @vue/component-compiler-utils
  • 尝试将上述版本更改为三种不同的内容
  • 尝试运行composer installcomposer update
  • 从 master 创建一个新的临时暂存分支以防万一它是一些奇怪的 git 错误并从中构建

我在这里缺少什么?我的登台站点上的每个 vue 组件都返回相同的错误。最奇怪的是,临时服务器是我们生产服务器的直接克隆,所有这些都可以完全顺利地运行并且我得到零错误。

错误:

ERROR in ./resources/assets/js/components/component.vue
Module build failed (from ./node_modules/vue-loader/lib/index.js):
TypeError: Cannot read property 'parseComponent' of undefined
    at parse (/var/www/site/node_modules/@vue/component-compiler-utils/dist/parse.js:14:23)
    at Object.module.exports (/var/www/site/node_modules/vue-loader/lib/index.js:67:22)
 @ ./resources/assets/js/app.js 60:29-81
 @ multi ./resources/assets/js/app.js ./resources/assets/sass/app.scss
Run Code Online (Sandbox Code Playgroud)

我也尝试安装这些警告的依赖项,但仍然出现上述相同的错误,我将这些包含在内是因为这是我运行 bash 脚本并从我的暂存分支运行 npm install 时弹出的内容:

npm WARN eslint-plugin-vue@5.2.3 requires a peer of eslint@^5.0.0 but none is installed. You …
Run Code Online (Sandbox Code Playgroud)

npm laravel vue.js

18
推荐指数
5
解决办法
2万
查看次数

当 .git 位于不同文件夹中时如何配置 husky?

我正在尝试为我公司的项目设置提交时的自动 linting,我见过的最好方法是 NPMhusky包。我正在按照、 、Husky的设置说明进行操作,但我一直遇到同样的问题,但我不知道如何解决。eslintprettierlint-staged

\n

我的问题是我的项目是这样设置的:

\n
- Parent Directory\n  - .git\n  - Working Project Directory\n    - node_modules\n    - package.json\n
Run Code Online (Sandbox Code Playgroud)\n

当我尝试安装 husky 时,出现错误,提示我缺少该.git文件,但它就在那里,只是文件结构中的上一级!

\n

我在其他帖子中看到了一些有关使用以下技术来修复它的内容:

\n
\n

npx mrm lint-staged这将失败,\xe2\x80\x99s 预期

\n
\n
\n

然后修复 npm 准备脚本\n "prepare": "husky install" -> "prepare": "cd .. && husky install some-folder/.husky"

\n
\n
\n

然后运行npm i

\n
\n

然而它对我不起作用。

\n

我也尝试在中安装 husky,parent directory但它不太有效,并且它使我们项目的安装过程变得更加困难

\n

有没有人有什么建议?

\n

编辑:这是我收到的错误消息:

\n
% …
Run Code Online (Sandbox Code Playgroud)

javascript npm eslint package.json husky

9
推荐指数
2
解决办法
9510
查看次数

FPDF 获取“输出目标不正确”,但错误代码显示正确的目标

我正在尝试使用 FPDF 和 FPDI 编辑 PDF 并向其添加文本。我不断收到“输出目标不正确”错误,但目标是我希望它在其中创建文件的正确位置,为什么 FPDF 不喜欢我的输出目标?

这是在 laravel 项目中

    $pdf = new \setasign\Fpdi\Fpdi();
    $pdf->AddPage();
    $pdf->setSourceFile(public_path('/pdf/higher.pdf'));
    $tplIdx = $pdf->importPage(1);
    $pdf->useTemplate($tplIdx, 10, 10, 100);
    $pdf->SetFont('Helvetica');
    $pdf->SetTextColor(255, 0, 0);
    $pdf->SetXY(30, 30);
    $pdf->Write(0, 'This is just a simple text');
    $pdf->Output(public_path('/pdf/'),'higher2');
    return $pdf;
Run Code Online (Sandbox Code Playgroud)

错误是:

 message: "FPDF error: Incorrect output destination: /home/vagrant/code/project-name/public/pdf/"
Run Code Online (Sandbox Code Playgroud)

我还尝试删除“public_path()”并将其设置为,Output('pdf', 'higher2')但那里也没有好处。

此外,我还尝试更改输出 pdf 的名称,higher2.pdf以防万一它想查看扩展名(但显然它更多的是目的地问题,而不是名称问题)

我什至尝试更改此文件夹的权限,使其可供任何人写入:

drwxrwxrwx  5 ion  staff    160 May 21 05:44 pdf
Run Code Online (Sandbox Code Playgroud)

编辑:请注意,我看到 public_path() 的方法由于某种原因试图保存到我的 vagrant 文件夹中,这是我感到困惑的部分原因。当我尝试在没有 public_path() 的情况下保存到“/pdf”时,出现此错误:

 message: "FPDF error: Incorrect output …
Run Code Online (Sandbox Code Playgroud)

php fpdf fpdi laravel vue.js

7
推荐指数
1
解决办法
1万
查看次数

LibreOffice 转换为 pdf 会产生文件无法加载错误,即使文件具有 777 权限

我最近为客户迁移了一个网站,但在使用 LibreOffice 时遇到了问题。该网站的一项功能是获取 docx,对其进行更改,然后复制它并将其转换为 pdf 供用户下载。由于某种原因,我无法获取需要更改为 pdf 的已编辑文件,以便 libreoffice 能够正确访问。

例如,如果在终端中我尝试运行:

libreoffice --headless --convert-to pdf edited_source.docx edited_pdf.pdf --outdir /storage 
Run Code Online (Sandbox Code Playgroud)

我收到错误:

Error: source file could not be loaded
Run Code Online (Sandbox Code Playgroud)

我绝对使用了正确的路径,并且我什至尝试进行设置chmod 777 edited_source.docx以进行测试(当然不会将其保留为 777),但即便如此,它也无法加载。

我有什么想法吗?我可能缺少一个包裹吗?

编辑:我还检查了正在转换的 docx 文件,以确保它们没有损坏,它们似乎在 word 等中可以正常打开,并且我还确保安装了 libreoffice-writer

编辑:我正在使用 Ubuntu 20.04.01 和 libreoffice 6.4.6.2

php pdf ubuntu libreoffice

6
推荐指数
1
解决办法
7295
查看次数

movzbl(%rdi, %rcx, 1), %ecx 在 x86-64 程序集中是什么意思?

我想我明白

movzbl (%rdi, %rcx, 1) , %ecx
Run Code Online (Sandbox Code Playgroud)

意思是“将零扩展字节移到长”,并表示将 ecx 扩展为 32 位,但我不完全确定语法 (%rdi, %rcx, 1) 指的是什么。

我在某处看到该语法指的是

(Base, Index, Scale)
Run Code Online (Sandbox Code Playgroud)

但我找不到任何能准确说明这意味着什么的资源。我猜这意味着将 (%rdi, %rcx, 1) 中的任何信息移动到 %ecx 以便

(long) %ecx = (%rdi, %rcx, 1)
Run Code Online (Sandbox Code Playgroud)

但我怎么知道那是什么位置?是否需要某种算术来查找地址或其他什么?

ecx 不是已经隐式 32 位了吗?为什么需要将其扩展为 32 位?

编辑澄清:

我知道语法 (%rdi, %rcx, 1) 意味着我必须将这三件事加在一起,但我不明白这是如何产生答案的。

我要添加什么,寄存器的内容?寄存器地址?如果是地址,我如何找出地址并将其添加在一起?

我在网上找到的只是告诉我语法的含义,而不是如何在示例中使用它。

64-bit x86 assembly x86-64

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

过滤霍夫变换以仅在 Matlab 中找到水平线和垂直线

我正在尝试编写一些代码来查找图像中的线条并在找到的线条上绘制一条红线。我已经使用 Hough 变换设法做到了这一点,但我的问题是我需要它只找到水平线和垂直线,而忽略所有其他斜坡的线。

我想我可以通过找到代码找到的线的斜率来解决这个问题,并且只使用 if 语句在水平和垂直线上显示红线,但我无法弄清楚如何提取 x 和 y 值从我发现的点来看。

有没有人对如何解决这个问题有任何建议?

这是我的代码如下:

function findlineshv(I)

% Read Image
img = imread(I);

% Convert to black and white because
% edge function only works with BW imgs
bwImage = rgb2gray(img);

% figure(1),imshow(bwImage);

% find edges using edge function
b=edge(bwImage,'sobel');

% show edges
% figure(1),imshow(b);


% compute the Hough transform of the edges found
% by the edge function
[hou,theta,rho] = hough(b);

% define peaks, x and y
peaks = houghpeaks(hou,5,'threshold',ceil(0.3*max(hou(:))));

x = …
Run Code Online (Sandbox Code Playgroud)

matlab image-processing

3
推荐指数
1
解决办法
3335
查看次数

表示已知大小变量的表达式结果的最小位数?

我正在尝试更多地了解计算机如何存储内存.所以我找到了有关如何表示二进制数或十六进制数的信息,但我发现了一个问题:

Given three n-bit unsigned ints: x, y, z, what is the min # 
of bits required to represent x * y + z 
Run Code Online (Sandbox Code Playgroud)

所以我的想法是:我是否必须分别考虑所有三个整数并对最小的数字进行数学运算,例如0*0 + 0

或者我是否必须考虑问题导致的另一个变量n?

我在思考这个问题时遇到了一些麻烦.

c memory binary assembly bit

2
推荐指数
1
解决办法
575
查看次数

在 Jest 中,如何测试组件中的非模拟方法是否正在单击时运行?

以前,我创建了模拟函数,并且能够使用类似的方法来测试它们是否被调用expect(mockFunction).toHaveBeenCalledTimes(2)

但是,我有一种情况,我想看看当我模拟单击汉堡菜单时,如何访问组件中的特定方法,以便我可以在 中测试它expect

我知道我可以通过单击到达它,因为如果我将 console.log 放入其中,它就会触发。

我在 html 中有一个元素:

<hamburger class="hamburger" @click.native="toggleMobileNav"/>
Run Code Online (Sandbox Code Playgroud)

我的方法是:

toggleMobileNav() {
      console.log('this console log works on click');
      //...add classes to nav for css
    },
Run Code Online (Sandbox Code Playgroud)

在我的测试中我需要做这样的事情:

it('should be able to toggle nav in mobile', async () => {
        wrapper.find('.hamburger').trigger('click');

        expect(notebookNav.toggleMobileNav()).toHaveBeenCalled(); //doesn't work because it is not a mock or spy function
    })
Run Code Online (Sandbox Code Playgroud)

javascript unit-testing vue.js jestjs

2
推荐指数
1
解决办法
2635
查看次数