Как я могу удалить параметр строки запроса в JavaScript?

Можете ли вы использовать функциональные возможности по умолчанию для android Crop?

Вот мой код

private void performCrop(Uri picUri) {
    try {
        Intent cropIntent = new Intent("com.android.camera.action.CROP");
        // indicate image type and Uri
        cropIntent.setDataAndType(picUri, "image/*");
        // set crop properties here
        cropIntent.putExtra("crop", true);
        // indicate aspect of desired crop
        cropIntent.putExtra("aspectX", 1);
        cropIntent.putExtra("aspectY", 1);
        // indicate output X and Y
        cropIntent.putExtra("outputX", 128);
        cropIntent.putExtra("outputY", 128);
        // retrieve data on return
        cropIntent.putExtra("return-data", true);
        // start the activity - we handle returning in onActivityResult
        startActivityForResult(cropIntent, PIC_CROP);
    }
    // respond to users whose devices do not support the crop action
    catch (ActivityNotFoundException anfe) {
        // display an error message
        String errorMessage = "Whoops - your device doesn't support the crop action!";
        Toast toast = Toast.makeText(this, errorMessage, Toast.LENGTH_SHORT);
        toast.show();
    }
}

declare:

final int PIC_CROP = 1;

наверху.

В методе результата onActivity напишите следующий код:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);

    if (requestCode == PIC_CROP) {
        if (data != null) {
            // get the returned data
            Bundle extras = data.getExtras();
            // get the cropped bitmap
            Bitmap selectedBitmap = extras.getParcelable("data");

            imgView.setImageBitmap(selectedBitmap);
        }
    }
}

Для меня довольно легко реализовать, а также отобразить затемненные области.

114
задан 5 revs, 2 users 94% 28 October 2009 в 05:23
поделиться

3 ответа

"[&;]?" + parameter + "=[^&;]+"

Кажется опасным, потому что ему соответствует параметр 'bar':

?a=b&foobar=c

Кроме того, он не будет работать, если параметр содержит какие-либо символы которые являются специальными в RegExp, например '.'. И это не глобальное регулярное выражение, поэтому он удалит только один экземпляр параметра.

Я бы не стал использовать для этого простое регулярное выражение, я бы проанализировал параметры и потерял те, которые вам не нужны.

12205]

169
ответ дан 24 November 2019 в 02:32
поделиться
const params = new URLSearchParams(location.search)
params.delete('key_to_delete')
console.log(params.toString())
0
ответ дан 24 November 2019 в 02:32
поделиться

Если вам нравится jQuery, есть хороший плагин для работы со строкой запроса:

-2
ответ дан 24 November 2019 в 02:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: