Расчет значения приращения в react js

Я хочу передать значение параметра в стиле для расчета моей ширины. мой код

function getValue(value) {
  if (value === 12) {
    return {
      width: '( 20 - value )%',
    };
  }
  return false;
}

но ширина не работает. Я новичок в реакции. пожалуйста помоги.

Я запутался? Вы просто хотите получить (20 - ценность)%?

Electrox Mortem 09.11.2018 05:45

да @JermahlWhite

jan 09.11.2018 05:47

Итак, если значение равно 12, что вы хотите, чтобы функция вернула? потому что в противном случае он вернет false

JSONaLeo 09.11.2018 05:51

Если он возвращается только тогда, когда он 12, вы можете просто вернуть {width: 0.08} всякий раз, когда оно 12, вместо (20 - значение) / 100.

Electrox Mortem 09.11.2018 05:57
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Безумие обратных вызовов в javascript [JS]
Безумие обратных вызовов в javascript [JS]
Здравствуйте! Юный падаван 🚀. Присоединяйся ко мне, чтобы разобраться в одной из самых запутанных концепций, когда вы начинаете изучать мир...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
JavaScript Вопросы с множественным выбором и ответы
JavaScript Вопросы с множественным выбором и ответы
Если вы ищете платформу, которая предоставляет вам бесплатный тест JavaScript MCQ (Multiple Choice Questions With Answers) для оценки ваших знаний,...
0
4
126
3

Ответы 3

Вы не можете вычислить, является ли это строкой. Кавычки ('') превращают его в строку. Кроме того, % является оператором остатка. Получает остаток от двух чисел. Это похоже на деление. Вы можете узнать больше об операторе остатка на MDN Я не понимаю, какое это имеет отношение к реакции, это больше просто ванильный javascript.

Я думаю, что ты можешь хотеть

function getValue(value) {
  if (value !== 12) { return false; }
  return {
    width: (20 - value)/100,
  };
}

Вы также можете сделать следующее, поскольку он возвращается только в том случае, если значение, если 12

var getValue = value => value === 12 ? { width: 0.08 } : false

В этом решении используются стрелочные функции, автоматический возврат и тернарные операторы. Вы можете прочитать о них на мдн

бесплатное голосование от меня :) Спасибо, что позвонили остатку, а также связались с MDN!

John Ruddell 09.11.2018 06:33

Я чувствую себя оскорбленным. Отредактировано без моего ведома

Electrox Mortem 09.11.2018 07:04

Ха-ха! Я помог, не так ли? :)

John Ruddell 09.11.2018 07:28

@JohnRuddell Как ты помог ??? Мне нужно знать, как вы помогаете, чтобы я мог выразить благодарность

Electrox Mortem 09.11.2018 08:05

Вы видели то, что я редактировал, и комментарий, который я оставил? Для просмотра моего редактирования вам нужно щелкнуть ссылку edited 1 hour ago

John Ruddell 09.11.2018 08:12

Попробуй это

ширина: (20 - значение) + ‘%’

Вам нужно что-то вроде ниже. Вы проверяете постоянное значение, поэтому нет необходимости выполнять арифметические операции, просто верните 8. Вы можете упростить функцию, как показано ниже.

function getValue(value) {
  // return object for style or undefined for no styling
  return value === 12 ? {'width': '8% !important' } : undefined;
}

Если бы вы придерживались арифметики, потому что хотели просто всегда выполнять вычисления (например). Тогда более приятный способ записать функцию был бы таким.

function getValue(value) {
  return { 'width': `${20 - value}% !important` };
}

Зачем вообще использовать вторую строку? Вы можете просто проверить, 12, а если да, вернуть 0,08? поскольку (20-12)% всегда 8%

Electrox Mortem 09.11.2018 05:59

Согласен с тобой :)

Hemadri Dasari 09.11.2018 06:13

Бесплатное голосование, потому что вы согласны со мной, а также из-за качества. Определенно в основном из-за качества;)

Electrox Mortem 09.11.2018 06:25

Бесплатные голоса и правки от меня :) хороший способ "подумать дважды";) о попытке!

John Ruddell 09.11.2018 06:27

Я написал ваш код ... но когда я использую width: '7%', он показывает разную ширину, а когда я пишу width: $ {20 - value}% ', он показывает разную ширину ... Я не знаю, в чем разница между этими двумя кодами. а здесь значение 13 @JohnRuddell

jan 09.11.2018 06:52

Другие вопросы по теме