gpt4 book ai didi

javascript - 使用 NavLink 动态地将最后两个单词包装在一个字符串中

转载 作者:行者123 更新时间:2023-12-04 08:43:01 27 4
gpt4 key购买 nike

我目前有一个我正在连接的字符串......请参阅最后的个人资料。我正在尝试包装在来自 react-router-dom 的 NavLink 中连接的 see 配置文件,这是否可能,如果是这样,最好的方法是什么。我的代码如下:

import React from "react";
import { NavLink } from "react-router-dom";
import "./styles.scss";

export default function App() {
let str = `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam hendrerit
nisi sed sollicitudin pellentesque. Nunc posuere purus rhoncus pulvinar
aliquam. Ut aliquet tristique nisl vitae volutpat. Nulla aliquet
porttitor venenatis. Donec a dui et dui fringilla consectetur id nec
massa. Aliquam erat volutpat. Sed ut dui ut lacus dictum fermentum vel
tincidunt neque. Sed sed lacinia lectus. Duis sit amet sodales felis.
Duis nunc eros, mattis at dui ac, convallis semper risus. In adipiscing
ultrices tellus, in suscipit massa vehicula eu. Lorem ipsum dolor sit
amet, consectetur adipiscing elit. Nam hendrerit nisi sed sollicitudin
pellentesque. Nunc posuere purus rhoncus pulvinar aliquam. Ut aliquet
tristique nisl vitae volutpat. Nulla aliquet porttitor venenatis. Donec
a dui et dui fringilla consectetur id nec massa. Aliquam erat volutpat.
Sed ut dui ut lacus dictum fermentum vel tincidunt neque. Sed sed
lacinia lectus. Duis sit amet sodales felis. Duis nunc eros, mattis at
dui ac, convallis semper risus. In adipiscing ultrices tellus, in
suscipit massa vehicula eu.`;

// I am using this as a solution for ensuring my character count doesn't go over 570 words, I have tried a pure css solution but the overflow: hidden would hide the read more.

if (str.length >= 570) {
str = str.substring(0, 570) + `... see profile`;
} else if (str.length <= 570) {
str = str + `... see profile`;
}

return (
<div className="customer-card-bottom">
<div className="customer-card-body">{str}</div>
</div>
);
}
附上调试测试用的代码笔: https://codesandbox.io/s/elated-framework-3v0c4?file=/src/App.js

最佳答案

这里的解决方案是使用 JSX 来构建 View 配置文件部分:

import React from "react";
import { NavLink } from "react-router-dom";
import "./styles.scss";

function SimpleNavLink({ children }) {
return <a href="#something">{children}</a>;
}

export default function App() {
let str = `Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nam hendrerit
nisi sed sollicitudin pellentesque. Nunc posuere purus rhoncus pulvinar
aliquam. Ut aliquet tristique nisl vitae volutpat. Nulla aliquet
porttitor venenatis. Donec a dui et dui fringilla consectetur id nec
massa. Aliquam erat volutpat. Sed ut dui ut lacus dictum fermentum vel
tincidunt neque. Sed sed lacinia lectus. Duis sit amet sodales felis.
Duis nunc eros, mattis at dui ac, convallis semper risus. In adipiscing
ultrices tellus, in suscipit massa vehicula eu. Lorem ipsum dolor sit
amet, consectetur adipiscing elit. Nam hendrerit nisi sed sollicitudin
pellentesque. Nunc posuere purus rhoncus pulvinar aliquam. Ut aliquet
tristique nisl vitae volutpat. Nulla aliquet porttitor venenatis. Donec
a dui et dui fringilla consectetur id nec massa. Aliquam erat volutpat.
Sed ut dui ut lacus dictum fermentum vel tincidunt neque. Sed sed
lacinia lectus. Duis sit amet sodales felis. Duis nunc eros, mattis at
dui ac, convallis semper risus. In adipiscing ultrices tellus, in
suscipit massa vehicula eu.`;

if (str.length >= 570) {
str = str.substring(0, 570);
}

return (
<div className="customer-card-bottom">
<div className="customer-card-body">
{str}&nbsp;
<SimpleNavLink>...see profile</SimpleNavLink>
</div>
</div>
);
}
这样做可以让你仍然确保内容少于 570 个字符,同时仍然能够在最后一点使用你的 react 元素。
请记住,您将替换 <SimpleNavLink /><NavLink />

关于javascript - 使用 NavLink 动态地将最后两个单词包装在一个字符串中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64470588/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com